aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/utils/flags.go
diff options
context:
space:
mode:
authorFelix Lange <fjl@twurst.com>2016-11-14 17:52:02 +0800
committerGitHub <noreply@github.com>2016-11-14 17:52:02 +0800
commitca73dea3b9bcdf3b5424b5c48c70817439e2e304 (patch)
tree670e2833878e72555644fbbd81db6c5a1b44493f /cmd/utils/flags.go
parent21701190ac0a838e347f31b7a918bb0a60c1e8c1 (diff)
parent648bd22427000b6e20a5e1a9c397005aa1ad4f9b (diff)
downloadgo-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.tar
go-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.tar.gz
go-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.tar.bz2
go-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.tar.lz
go-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.tar.xz
go-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.tar.zst
go-tangerine-ca73dea3b9bcdf3b5424b5c48c70817439e2e304.zip
Merge pull request #3179 from obscuren/eip-158
EIP158 & 160 Hardfork
Diffstat (limited to 'cmd/utils/flags.go')
-rw-r--r--cmd/utils/flags.go38
1 files changed, 29 insertions, 9 deletions
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go
index 626c2615d..2d6bb4f5b 100644
--- a/cmd/utils/flags.go
+++ b/cmd/utils/flags.go
@@ -801,7 +801,7 @@ func SetupNetwork(ctx *cli.Context) {
}
// MakeChainConfig reads the chain configuration from the database in ctx.Datadir.
-func MakeChainConfig(ctx *cli.Context, stack *node.Node) *core.ChainConfig {
+func MakeChainConfig(ctx *cli.Context, stack *node.Node) *params.ChainConfig {
db := MakeChainDatabase(ctx, stack)
defer db.Close()
@@ -809,9 +809,9 @@ func MakeChainConfig(ctx *cli.Context, stack *node.Node) *core.ChainConfig {
}
// MakeChainConfigFromDb reads the chain configuration from the given database.
-func MakeChainConfigFromDb(ctx *cli.Context, db ethdb.Database) *core.ChainConfig {
+func MakeChainConfigFromDb(ctx *cli.Context, db ethdb.Database) *params.ChainConfig {
// If the chain is already initialized, use any existing chain configs
- config := new(core.ChainConfig)
+ config := new(params.ChainConfig)
genesis := core.GetBlock(db, core.GetCanonicalHash(db, 0), 0)
if genesis != nil {
@@ -825,6 +825,10 @@ func MakeChainConfigFromDb(ctx *cli.Context, db ethdb.Database) *core.ChainConfi
Fatalf("Could not make chain configuration: %v", err)
}
}
+ // set chain id in case it's zero.
+ if config.ChainId == nil {
+ config.ChainId = new(big.Int)
+ }
// Check whether we are allowed to set default config params or not:
// - If no genesis is set, we're running either mainnet or testnet (private nets use `geth init`)
// - If a genesis is already set, ensure we have a configuration for it (mainnet or testnet)
@@ -849,21 +853,37 @@ func MakeChainConfigFromDb(ctx *cli.Context, db ethdb.Database) *core.ChainConfi
}
config.DAOForkSupport = true
}
- if config.HomesteadGasRepriceBlock == nil {
+ if config.EIP150Block == nil {
+ if ctx.GlobalBool(TestNetFlag.Name) {
+ config.EIP150Block = params.TestNetHomesteadGasRepriceBlock
+ } else {
+ config.EIP150Block = params.MainNetHomesteadGasRepriceBlock
+ }
+ }
+ if config.EIP150Hash == (common.Hash{}) {
if ctx.GlobalBool(TestNetFlag.Name) {
- config.HomesteadGasRepriceBlock = params.TestNetHomesteadGasRepriceBlock
+ config.EIP150Hash = params.TestNetHomesteadGasRepriceHash
} else {
- config.HomesteadGasRepriceBlock = params.MainNetHomesteadGasRepriceBlock
+ config.EIP150Hash = params.MainNetHomesteadGasRepriceHash
}
}
- if config.HomesteadGasRepriceHash == (common.Hash{}) {
+ if config.EIP155Block == nil {
if ctx.GlobalBool(TestNetFlag.Name) {
- config.HomesteadGasRepriceHash = params.TestNetHomesteadGasRepriceHash
+ config.EIP150Block = params.TestNetSpuriousDragon
} else {
- config.HomesteadGasRepriceHash = params.MainNetHomesteadGasRepriceHash
+ config.EIP155Block = params.MainNetSpuriousDragon
}
}
+ if config.EIP158Block == nil {
+ if ctx.GlobalBool(TestNetFlag.Name) {
+ config.EIP158Block = params.TestNetSpuriousDragon
+ } else {
+ config.EIP158Block = params.MainNetSpuriousDragon
+ }
+ }
+ config.DAOForkSupport = true
}
+
// Force override any existing configs if explicitly requested
switch {
case ctx.GlobalBool(SupportDAOFork.Name):