diff options
author | Martin Holst Swende <martin@swende.se> | 2017-12-08 17:06:16 +0800 |
---|---|---|
committer | Martin Holst Swende <martin@swende.se> | 2017-12-08 17:06:16 +0800 |
commit | 79d5e5593fc86190a5f67d9c48b3de365075c9cd (patch) | |
tree | 2f93488207b0a06d296cce365afbce45c7f20b23 | |
parent | b5874273cec729adce84acf5848536d20fb60f7c (diff) | |
download | dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.tar dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.tar.gz dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.tar.bz2 dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.tar.lz dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.tar.xz dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.tar.zst dexon-79d5e5593fc86190a5f67d9c48b3de365075c9cd.zip |
consensus/ethash: relax requirements when determining future-blocks
-rw-r--r-- | consensus/ethash/consensus.go | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/consensus/ethash/consensus.go b/consensus/ethash/consensus.go index 775419e06..2bdb18677 100644 --- a/consensus/ethash/consensus.go +++ b/consensus/ethash/consensus.go @@ -36,9 +36,10 @@ import ( // Ethash proof-of-work protocol constants. var ( - FrontierBlockReward *big.Int = big.NewInt(5e+18) // Block reward in wei for successfully mining a block - ByzantiumBlockReward *big.Int = big.NewInt(3e+18) // Block reward in wei for successfully mining a block upward from Byzantium - maxUncles = 2 // Maximum number of uncles allowed in a single block + FrontierBlockReward *big.Int = big.NewInt(5e+18) // Block reward in wei for successfully mining a block + ByzantiumBlockReward *big.Int = big.NewInt(3e+18) // Block reward in wei for successfully mining a block upward from Byzantium + maxUncles = 2 // Maximum number of uncles allowed in a single block + allowedFutureBlockTime = 15 * time.Second // Max time from current time allowed for blocks, before they're considered future blocks ) // Various error messages to mark blocks invalid. These should be private to @@ -231,7 +232,7 @@ func (ethash *Ethash) verifyHeader(chain consensus.ChainReader, header, parent * return errLargeBlockTime } } else { - if header.Time.Cmp(big.NewInt(time.Now().Unix())) > 0 { + if header.Time.Cmp(big.NewInt(time.Now().Add(allowedFutureBlockTime).Unix())) > 0 { return consensus.ErrFutureBlock } } |