Unverified Commit e74bd587 authored by Guillaume Ballet's avatar Guillaume Ballet Committed by GitHub

consensus: remove seal verification from the consensus engine interface (#22274)

parent 7ed860d4
...@@ -434,12 +434,6 @@ func (c *Clique) VerifyUncles(chain consensus.ChainReader, block *types.Block) e ...@@ -434,12 +434,6 @@ func (c *Clique) VerifyUncles(chain consensus.ChainReader, block *types.Block) e
return nil return nil
} }
// VerifySeal implements consensus.Engine, checking whether the signature contained
// in the header satisfies the consensus protocol requirements.
func (c *Clique) VerifySeal(chain consensus.ChainHeaderReader, header *types.Header) error {
return c.verifySeal(chain, header, nil)
}
// verifySeal checks whether the signature contained in the header satisfies the // verifySeal checks whether the signature contained in the header satisfies the
// consensus protocol requirements. The method accepts an optional list of parent // consensus protocol requirements. The method accepts an optional list of parent
// headers that aren't yet part of the local blockchain to generate the snapshots // headers that aren't yet part of the local blockchain to generate the snapshots
......
...@@ -77,10 +77,6 @@ type Engine interface { ...@@ -77,10 +77,6 @@ type Engine interface {
// rules of a given engine. // rules of a given engine.
VerifyUncles(chain ChainReader, block *types.Block) error VerifyUncles(chain ChainReader, block *types.Block) error
// VerifySeal checks whether the crypto seal on a header is valid according to
// the consensus rules of the given engine.
VerifySeal(chain ChainHeaderReader, header *types.Header) error
// Prepare initializes the consensus fields of a block header according to the // Prepare initializes the consensus fields of a block header according to the
// rules of a particular engine. The changes are executed inline. // rules of a particular engine. The changes are executed inline.
Prepare(chain ChainHeaderReader, header *types.Header) error Prepare(chain ChainHeaderReader, header *types.Header) error
......
...@@ -731,7 +731,7 @@ func TestConcurrentDiskCacheGeneration(t *testing.T) { ...@@ -731,7 +731,7 @@ func TestConcurrentDiskCacheGeneration(t *testing.T) {
defer pend.Done() defer pend.Done()
ethash := New(Config{cachedir, 0, 1, false, "", 0, 0, false, ModeNormal, nil}, nil, false) ethash := New(Config{cachedir, 0, 1, false, "", 0, 0, false, ModeNormal, nil}, nil, false)
defer ethash.Close() defer ethash.Close()
if err := ethash.VerifySeal(nil, block.Header()); err != nil { if err := ethash.verifySeal(nil, block.Header(), false); err != nil {
t.Errorf("proc %d: block verification failed: %v", idx, err) t.Errorf("proc %d: block verification failed: %v", idx, err)
} }
}(i) }(i)
......
...@@ -288,7 +288,7 @@ func (ethash *Ethash) verifyHeader(chain consensus.ChainHeaderReader, header, pa ...@@ -288,7 +288,7 @@ func (ethash *Ethash) verifyHeader(chain consensus.ChainHeaderReader, header, pa
} }
// Verify the engine specific seal securing the block // Verify the engine specific seal securing the block
if seal { if seal {
if err := ethash.VerifySeal(chain, header); err != nil { if err := ethash.verifySeal(chain, header, false); err != nil {
return err return err
} }
} }
...@@ -488,12 +488,6 @@ var FrontierDifficultyCalulator = calcDifficultyFrontier ...@@ -488,12 +488,6 @@ var FrontierDifficultyCalulator = calcDifficultyFrontier
var HomesteadDifficultyCalulator = calcDifficultyHomestead var HomesteadDifficultyCalulator = calcDifficultyHomestead
var DynamicDifficultyCalculator = makeDifficultyCalculator var DynamicDifficultyCalculator = makeDifficultyCalculator
// VerifySeal implements consensus.Engine, checking whether the given block satisfies
// the PoW difficulty requirements.
func (ethash *Ethash) VerifySeal(chain consensus.ChainHeaderReader, header *types.Header) error {
return ethash.verifySeal(chain, header, false)
}
// verifySeal checks whether a block satisfies the PoW difficulty requirements, // verifySeal checks whether a block satisfies the PoW difficulty requirements,
// either using the usual ethash cache for it, or alternatively using a full DAG // either using the usual ethash cache for it, or alternatively using a full DAG
// to make remote mining fast. // to make remote mining fast.
......
...@@ -46,7 +46,7 @@ func TestTestMode(t *testing.T) { ...@@ -46,7 +46,7 @@ func TestTestMode(t *testing.T) {
case block := <-results: case block := <-results:
header.Nonce = types.EncodeNonce(block.Nonce()) header.Nonce = types.EncodeNonce(block.Nonce())
header.MixDigest = block.MixDigest() header.MixDigest = block.MixDigest()
if err := ethash.VerifySeal(nil, header); err != nil { if err := ethash.verifySeal(nil, header, false); err != nil {
t.Fatalf("unexpected verification error: %v", err) t.Fatalf("unexpected verification error: %v", err)
} }
case <-time.NewTimer(4 * time.Second).C: case <-time.NewTimer(4 * time.Second).C:
...@@ -86,7 +86,7 @@ func verifyTest(wg *sync.WaitGroup, e *Ethash, workerIndex, epochs int) { ...@@ -86,7 +86,7 @@ func verifyTest(wg *sync.WaitGroup, e *Ethash, workerIndex, epochs int) {
block = 0 block = 0
} }
header := &types.Header{Number: big.NewInt(block), Difficulty: big.NewInt(100)} header := &types.Header{Number: big.NewInt(block), Difficulty: big.NewInt(100)}
e.VerifySeal(nil, header) e.verifySeal(nil, header, false)
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment