diff --git a/cmd/geth/config.go b/cmd/geth/config.go index 2c15a4c832..6b51843aa4 100644 --- a/cmd/geth/config.go +++ b/cmd/geth/config.go @@ -73,8 +73,19 @@ type ethstatsConfig struct { URL string `toml:",omitempty"` } +// whisper has been deprecated, but clients out there might still have [Shh] +// in their config, which will crash. Cut them some slack by keeping the +// config, and displaying a message that those config switches are ineffectual. +// To be removed circa Q1 2021 -- @gballet. +type whisperDeprecatedConfig struct { + MaxMessageSize uint32 `toml:",omitempty"` + MinimumAcceptedPOW float64 `toml:",omitempty"` + RestrictConnectionBetweenLightClients bool `toml:",omitempty"` +} + type gethConfig struct { Eth eth.Config + Shh whisperDeprecatedConfig Node node.Config Ethstats ethstatsConfig } @@ -117,6 +128,10 @@ func makeConfigNode(ctx *cli.Context) (*node.Node, gethConfig) { if err := loadConfig(file, &cfg); err != nil { utils.Fatalf("%v", err) } + + if cfg.Shh != (whisperDeprecatedConfig{}) { + log.Warn("Deprecated whisper config detected. Whisper has been moved to github.com/ethereum/whisper") + } } // Apply flags.