cmd/geth: support bigints for --override.terminaltotaldifficulty (#24646)

Co-authored-by: Felix Lange <fjl@twurst.com>
This commit is contained in:
Marius van der Wijden 2022-04-13 11:28:23 +02:00 committed by GitHub
parent 9c82c646e4
commit ca298a2821
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 4 deletions

View File

@ -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)) cfg.Eth.OverrideArrowGlacier = new(big.Int).SetUint64(ctx.GlobalUint64(utils.OverrideArrowGlacierFlag.Name))
} }
if ctx.GlobalIsSet(utils.OverrideTerminalTotalDifficulty.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) backend, eth := utils.RegisterEthService(stack, &cfg.Eth)
// Warn users to migrate if they have a legacy freezer format. // Warn users to migrate if they have a legacy freezer format.

View File

@ -154,11 +154,11 @@ func (b *bigValue) String() string {
} }
func (b *bigValue) Set(s string) error { func (b *bigValue) Set(s string) error {
int, ok := math.ParseBig256(s) intVal, ok := math.ParseBig256(s)
if !ok { if !ok {
return errors.New("invalid integer syntax") return errors.New("invalid integer syntax")
} }
*b = (bigValue)(*int) *b = (bigValue)(*intVal)
return nil return nil
} }
@ -172,6 +172,7 @@ func (f BigFlag) String() string {
func (f BigFlag) Apply(set *flag.FlagSet) { func (f BigFlag) Apply(set *flag.FlagSet) {
eachName(f.Name, func(name string) { eachName(f.Name, func(name string) {
f.Value = new(big.Int)
set.Var((*bigValue)(f.Value), f.Name, f.Usage) set.Var((*bigValue)(f.Value), f.Name, f.Usage)
}) })
} }

View File

@ -258,7 +258,7 @@ var (
Name: "override.arrowglacier", Name: "override.arrowglacier",
Usage: "Manually specify Arrow Glacier fork-block, overriding the bundled setting", Usage: "Manually specify Arrow Glacier fork-block, overriding the bundled setting",
} }
OverrideTerminalTotalDifficulty = cli.Uint64Flag{ OverrideTerminalTotalDifficulty = BigFlag{
Name: "override.terminaltotaldifficulty", Name: "override.terminaltotaldifficulty",
Usage: "Manually specify TerminalTotalDifficulty, overriding the bundled setting", Usage: "Manually specify TerminalTotalDifficulty, overriding the bundled setting",
} }