go-ethereum/cmd/utils
Giulio 2e357729a3 eth/catalyst: implement EIP-8161 SSZ-REST Engine API transport
Add SSZ-REST as an alternative Engine API transport alongside JSON-RPC.
When enabled via --authrpc.ssz-rest (alias: --rest), Geth starts an
additional HTTP server that accepts SSZ-encoded payloads over REST,
cutting wire size ~50% and eliminating JSON encode/decode overhead.

New files:
- beacon/engine/ssz.go: SSZ encoding/decoding for all Engine API types
- beacon/engine/ssz_test.go: round-trip tests for SSZ codecs
- eth/catalyst/ssz_rest.go: SSZ-REST HTTP server with JWT auth
- eth/catalyst/ssz_rest_test.go: server unit tests

Modified files:
- beacon/engine/types.go: CommunicationChannel, ExchangeCapabilitiesV2Response
- eth/catalyst/api.go: ExchangeCapabilitiesV2, getSupportedProtocols, server wiring
- node/config.go, defaults.go: SszRestEnabled, SszRestPort config
- node/jwt_handler.go: exported NewJWTHandler for reuse
- cmd/utils/flags.go, cmd/geth/main.go: CLI flags

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 18:40:37 +01:00
..
cmd.go internal/era: New EraE implementation (#32157) 2026-02-09 08:30:19 -07:00
diskusage.go all: add build tags for wasip1 (#31090) 2025-01-30 16:58:53 +01:00
diskusage_openbsd.go all: update license headers and AUTHORS from git history (#24947) 2022-05-24 20:39:40 +02:00
diskusage_windows.go all: update license headers and AUTHORS from git history (#24947) 2022-05-24 20:39:40 +02:00
export_test.go all: use fmt.Appendf instead of fmt.Sprintf where possible (#31301) 2025-03-25 14:53:02 +01:00
flags.go eth/catalyst: implement EIP-8161 SSZ-REST Engine API transport 2026-03-02 18:40:37 +01:00
flags_legacy.go cmd/utils: show full deprecated flags (#32141) 2025-07-04 09:40:16 +08:00
flags_test.go build: update to golangci-lint 1.61.0 (#30587) 2024-10-14 19:25:22 +02:00
history_test.go internal/era: New EraE implementation (#32157) 2026-02-09 08:30:19 -07:00
prompt.go cmd/geth: remove unlock commandline flag (#30737) 2024-11-15 10:15:15 +01:00