diff options
author | Jeffrey Wilcke <jeffrey@ethereum.org> | 2015-06-09 04:43:41 +0800 |
---|---|---|
committer | Jeffrey Wilcke <jeffrey@ethereum.org> | 2015-06-09 04:43:41 +0800 |
commit | 55b7c14554bc4faabc14aac6410b75f97c55cd4e (patch) | |
tree | f5a840d89417bb2b0273d8edd6d81b07299c3f58 /cmd/utils | |
parent | 75522f95ce13b449123b60963ec1261d1e0507f1 (diff) | |
parent | 6244b10a8f74d92addf977994e5a9c0e457229bb (diff) | |
download | go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.tar go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.tar.gz go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.tar.bz2 go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.tar.lz go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.tar.xz go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.tar.zst go-tangerine-55b7c14554bc4faabc14aac6410b75f97c55cd4e.zip |
Merge pull request #1199 from obscuren/settable_genesis_nonce
core: settable genesis nonce
Diffstat (limited to 'cmd/utils')
-rw-r--r-- | cmd/utils/flags.go | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index 909d7815e..ab7eaf023 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -93,6 +93,11 @@ var ( Usage: "Blockchain version (integer)", Value: core.BlockChainVersion, } + GenesisNonceFlag = cli.IntFlag{ + Name: "genesisnonce", + Usage: "Sets the genesis nonce", + Value: 42, + } IdentityFlag = cli.StringFlag{ Name: "identity", Usage: "Custom node name", @@ -294,6 +299,7 @@ func MakeEthConfig(clientID, version string, ctx *cli.Context) *eth.Config { Name: common.MakeName(clientID, version), DataDir: ctx.GlobalString(DataDirFlag.Name), ProtocolVersion: ctx.GlobalInt(ProtocolVersionFlag.Name), + GenesisNonce: ctx.GlobalInt(GenesisNonceFlag.Name), BlockChainVersion: ctx.GlobalInt(BlockchainVersionFlag.Name), SkipBcVersionCheck: false, NetworkId: ctx.GlobalInt(NetworkIdFlag.Name), @@ -344,7 +350,12 @@ func MakeChain(ctx *cli.Context) (chain *core.ChainManager, blockDB, stateDB, ex eventMux := new(event.TypeMux) pow := ethash.New() - chain = core.NewChainManager(blockDB, stateDB, pow, eventMux) + genesis := core.GenesisBlock(uint64(ctx.GlobalInt(GenesisNonceFlag.Name)), blockDB) + chain, err = core.NewChainManager(genesis, blockDB, stateDB, pow, eventMux) + if err != nil { + Fatalf("Could not start chainmanager: %v", err) + } + proc := core.NewBlockProcessor(stateDB, extraDB, pow, chain, eventMux) chain.SetProcessor(proc) return chain, blockDB, stateDB, extraDB |