From ca298a28210622ddb18f2ec12b3ab7bf0f8d733c Mon Sep 17 00:00:00 2001 From: Marius van der Wijden Date: Wed, 13 Apr 2022 11:28:23 +0200 Subject: [PATCH] cmd/geth: support bigints for --override.terminaltotaldifficulty (#24646) Co-authored-by: Felix Lange --- cmd/geth/config.go | 2 +- cmd/utils/customflags.go | 5 +++-- cmd/utils/flags.go | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/cmd/geth/config.go b/cmd/geth/config.go index 26eeccb8b..d7b8b55d1 100644 --- a/cmd/geth/config.go +++ b/cmd/geth/config.go @@ -160,7 +160,7 @@ func makeFullNode(ctx *cli.Context) (*node.Node, ethapi.Backend) { cfg.Eth.OverrideArrowGlacier = new(big.Int).SetUint64(ctx.GlobalUint64(utils.OverrideArrowGlacierFlag.Name)) } if ctx.GlobalIsSet(utils.OverrideTerminalTotalDifficulty.Name) { - cfg.Eth.OverrideTerminalTotalDifficulty = new(big.Int).SetUint64(ctx.GlobalUint64(utils.OverrideTerminalTotalDifficulty.Name)) + cfg.Eth.OverrideTerminalTotalDifficulty = utils.GlobalBig(ctx, utils.OverrideTerminalTotalDifficulty.Name) } backend, eth := utils.RegisterEthService(stack, &cfg.Eth) // Warn users to migrate if they have a legacy freezer format. diff --git a/cmd/utils/customflags.go b/cmd/utils/customflags.go index 0a72e8034..e5be085a5 100644 --- a/cmd/utils/customflags.go +++ b/cmd/utils/customflags.go @@ -154,11 +154,11 @@ func (b *bigValue) String() string { } func (b *bigValue) Set(s string) error { - int, ok := math.ParseBig256(s) + intVal, ok := math.ParseBig256(s) if !ok { return errors.New("invalid integer syntax") } - *b = (bigValue)(*int) + *b = (bigValue)(*intVal) return nil } @@ -172,6 +172,7 @@ func (f BigFlag) String() string { func (f BigFlag) Apply(set *flag.FlagSet) { eachName(f.Name, func(name string) { + f.Value = new(big.Int) set.Var((*bigValue)(f.Value), f.Name, f.Usage) }) } diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index ae1e77675..1fb489732 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -258,7 +258,7 @@ var ( Name: "override.arrowglacier", Usage: "Manually specify Arrow Glacier fork-block, overriding the bundled setting", } - OverrideTerminalTotalDifficulty = cli.Uint64Flag{ + OverrideTerminalTotalDifficulty = BigFlag{ Name: "override.terminaltotaldifficulty", Usage: "Manually specify TerminalTotalDifficulty, overriding the bundled setting", }