|
|
@@ -29,6 +29,7 @@ import (
|
|
|
"github.com/ethereum/go-ethereum/common"
|
|
|
"github.com/ethereum/go-ethereum/common/hexutil"
|
|
|
"github.com/ethereum/go-ethereum/consensus"
|
|
|
+ "github.com/ethereum/go-ethereum/consensus/misc"
|
|
|
"github.com/ethereum/go-ethereum/core/state"
|
|
|
"github.com/ethereum/go-ethereum/core/types"
|
|
|
"github.com/ethereum/go-ethereum/crypto"
|
|
|
@@ -313,6 +314,10 @@ func (c *Clique) verifyHeader(chain consensus.ChainReader, header *types.Header,
|
|
|
return errInvalidDifficulty
|
|
|
}
|
|
|
}
|
|
|
+ // If all checks passed, validate any special fields for hard forks
|
|
|
+ if err := misc.VerifyForkHashes(chain.Config(), header, false); err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
// All basic checks passed, verify cascading fields
|
|
|
return c.verifyCascadingFields(chain, header, parents)
|
|
|
}
|