|
|
|
@ -135,6 +135,10 @@ var ( |
|
|
|
|
Usage: "Explicitly set network id (integer)(For testnets: use --ropsten, --rinkeby, --goerli instead)", |
|
|
|
|
Value: eth.DefaultConfig.NetworkId, |
|
|
|
|
} |
|
|
|
|
MainnetFlag = cli.BoolFlag{ |
|
|
|
|
Name: "mainnet", |
|
|
|
|
Usage: "Ethereum mainnet", |
|
|
|
|
} |
|
|
|
|
GoerliFlag = cli.BoolFlag{ |
|
|
|
|
Name: "goerli", |
|
|
|
|
Usage: "Görli network: pre-configured proof-of-authority test network", |
|
|
|
@ -1494,7 +1498,7 @@ func SetShhConfig(ctx *cli.Context, stack *node.Node) { |
|
|
|
|
// SetEthConfig applies eth-related command line flags to the config.
|
|
|
|
|
func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *eth.Config) { |
|
|
|
|
// Avoid conflicting network flags
|
|
|
|
|
CheckExclusive(ctx, DeveloperFlag, LegacyTestnetFlag, RopstenFlag, RinkebyFlag, GoerliFlag, YoloV2Flag) |
|
|
|
|
CheckExclusive(ctx, MainnetFlag, DeveloperFlag, LegacyTestnetFlag, RopstenFlag, RinkebyFlag, GoerliFlag, YoloV2Flag) |
|
|
|
|
CheckExclusive(ctx, LegacyLightServFlag, LightServeFlag, SyncModeFlag, "light") |
|
|
|
|
CheckExclusive(ctx, DeveloperFlag, ExternalSignerFlag) // Can't use both ephemeral unlocked and external signer
|
|
|
|
|
CheckExclusive(ctx, GCModeFlag, "archive", TxLookupLimitFlag) |
|
|
|
@ -1608,6 +1612,12 @@ func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *eth.Config) { |
|
|
|
|
} |
|
|
|
|
// Override any default configs for hard coded networks.
|
|
|
|
|
switch { |
|
|
|
|
case ctx.GlobalBool(MainnetFlag.Name): |
|
|
|
|
if !ctx.GlobalIsSet(NetworkIdFlag.Name) { |
|
|
|
|
cfg.NetworkId = 1 |
|
|
|
|
} |
|
|
|
|
cfg.Genesis = core.DefaultGenesisBlock() |
|
|
|
|
SetDNSDiscoveryDefaults(cfg, params.MainnetGenesisHash) |
|
|
|
|
case ctx.GlobalBool(LegacyTestnetFlag.Name) || ctx.GlobalBool(RopstenFlag.Name): |
|
|
|
|
if !ctx.GlobalIsSet(NetworkIdFlag.Name) { |
|
|
|
|
cfg.NetworkId = 3 |
|
|
|
|