aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/utils
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/utils')
-rw-r--r--cmd/utils/flags.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go
index af2929d10..5ebc4ea61 100644
--- a/cmd/utils/flags.go
+++ b/cmd/utils/flags.go
@@ -138,6 +138,11 @@ var (
Name: "olympic",
Usage: "Use olympic style protocol",
}
+ EthVersionFlag = cli.IntFlag{
+ Name: "eth",
+ Value: 61,
+ Usage: "Highest eth protocol to advertise (temporary, dev option)",
+ }
// miner settings
MinerThreadsFlag = cli.IntFlag{
@@ -459,6 +464,18 @@ func SetupVM(ctx *cli.Context) {
vm.SetJITCacheSize(ctx.GlobalInt(VMJitCacheFlag.Name))
}
+// SetupEth configures the eth packages global settings
+func SetupEth(ctx *cli.Context) {
+ version := ctx.GlobalInt(EthVersionFlag.Name)
+ for len(eth.ProtocolVersions) > 0 && eth.ProtocolVersions[0] > uint(version) {
+ eth.ProtocolVersions = eth.ProtocolVersions[1:]
+ eth.ProtocolLengths = eth.ProtocolLengths[1:]
+ }
+ if len(eth.ProtocolVersions) == 0 {
+ Fatalf("No valid eth protocols remaining")
+ }
+}
+
// MakeChain creates a chain manager from set command line flags.
func MakeChain(ctx *cli.Context) (chain *core.ChainManager, chainDb common.Database) {
datadir := ctx.GlobalString(DataDirFlag.Name)