aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorWei-Ning Huang <w@dexon.org>2019-03-17 10:43:10 +0800
committerGitHub <noreply@github.com>2019-03-17 10:43:10 +0800
commitabffdd7a5e23316403779dda6bd99909dd1a031b (patch)
tree33551bddaacac0da7516abb4f61b9bc19bd3c23e /core
parent6091c2de57fee155e5d7f512b326bde53c84c04e (diff)
downloaddexon-abffdd7a5e23316403779dda6bd99909dd1a031b.tar
dexon-abffdd7a5e23316403779dda6bd99909dd1a031b.tar.gz
dexon-abffdd7a5e23316403779dda6bd99909dd1a031b.tar.bz2
dexon-abffdd7a5e23316403779dda6bd99909dd1a031b.tar.lz
dexon-abffdd7a5e23316403779dda6bd99909dd1a031b.tar.xz
dexon-abffdd7a5e23316403779dda6bd99909dd1a031b.tar.zst
dexon-abffdd7a5e23316403779dda6bd99909dd1a031b.zip
core: fill in genesis timstamp and remove dMoment from protocol handshake (#263)
Fill in dmoment as genesis block timestamp. This allow us to remove dMoment check from protocol handshake since genesis block hash itself will protect us against different dMoment.
Diffstat (limited to 'core')
-rw-r--r--core/genesis.go5
-rw-r--r--core/genesis_test.go10
2 files changed, 14 insertions, 1 deletions
diff --git a/core/genesis.go b/core/genesis.go
index 76777421c..88d393dd5 100644
--- a/core/genesis.go
+++ b/core/genesis.go
@@ -384,7 +384,7 @@ func GenesisBlockForTesting(db ethdb.Database, addr common.Address, balance *big
func DefaultGenesisBlock() *Genesis {
return &Genesis{
Config: params.MainnetChainConfig,
- Timestamp: 1540024964,
+ Timestamp: params.MainnetChainConfig.DMoment,
Nonce: 0x42,
ExtraData: hexutil.MustDecode("0x5765692d4e696e6720536f6e696320426f6a696520323031382d31302d32302e"),
GasLimit: 40000000,
@@ -397,6 +397,7 @@ func DefaultGenesisBlock() *Genesis {
func DefaultTestnetGenesisBlock() *Genesis {
return &Genesis{
Config: params.TestnetChainConfig,
+ Timestamp: params.TestnetChainConfig.DMoment,
Nonce: 0x42,
ExtraData: hexutil.MustDecode("0x3535353535353535353535353535353535353535353535353535353535353535"),
GasLimit: 40000000,
@@ -409,6 +410,7 @@ func DefaultTestnetGenesisBlock() *Genesis {
func DefaultTaipeiGenesisBlock() *Genesis {
return &Genesis{
Config: params.TaipeiChainConfig,
+ Timestamp: params.TaipeiChainConfig.DMoment,
Nonce: 0x42,
ExtraData: hexutil.MustDecode("0x3535353535353535353535353535353535353535353535353535353535353535"),
GasLimit: 40000000,
@@ -421,6 +423,7 @@ func DefaultTaipeiGenesisBlock() *Genesis {
func DefaultYilanGenesisBlock() *Genesis {
return &Genesis{
Config: params.YilanChainConfig,
+ Timestamp: params.YilanChainConfig.DMoment,
Nonce: 0x42,
ExtraData: hexutil.MustDecode("0x3535353535353535353535353535353535353535353535353535353535353535"),
GasLimit: 40000000,
diff --git a/core/genesis_test.go b/core/genesis_test.go
index de843e05a..16958eac3 100644
--- a/core/genesis_test.go
+++ b/core/genesis_test.go
@@ -105,6 +105,16 @@ func TestSetupGenesis(t *testing.T) {
wantConfig: params.TestnetChainConfig,
},
{
+ name: "custom block in DB, genesis == taipei",
+ fn: func(db ethdb.Database) (*params.ChainConfig, common.Hash, error) {
+ customg.MustCommit(db)
+ return SetupGenesisBlock(db, DefaultTaipeiGenesisBlock())
+ },
+ wantErr: &GenesisMismatchError{Stored: customghash, New: params.TaipeiGenesisHash},
+ wantHash: params.TaipeiGenesisHash,
+ wantConfig: params.TaipeiChainConfig,
+ },
+ {
name: "custom block in DB, genesis == yilan",
fn: func(db ethdb.Database) (*params.ChainConfig, common.Hash, error) {
customg.MustCommit(db)