forked from cerc-io/plugeth
consensus/clique: unexport calcDifficulty and improve comment (#21619)
This commit is contained in:
parent
c37e68e7c1
commit
94d1f5888a
@ -520,7 +520,7 @@ func (c *Clique) Prepare(chain consensus.ChainHeaderReader, header *types.Header
|
|||||||
c.lock.RUnlock()
|
c.lock.RUnlock()
|
||||||
}
|
}
|
||||||
// Set the correct difficulty
|
// Set the correct difficulty
|
||||||
header.Difficulty = CalcDifficulty(snap, c.signer)
|
header.Difficulty = calcDifficulty(snap, c.signer)
|
||||||
|
|
||||||
// Ensure the extra data has all its components
|
// Ensure the extra data has all its components
|
||||||
if len(header.Extra) < extraVanity {
|
if len(header.Extra) < extraVanity {
|
||||||
@ -652,20 +652,18 @@ func (c *Clique) Seal(chain consensus.ChainHeaderReader, block *types.Block, res
|
|||||||
}
|
}
|
||||||
|
|
||||||
// CalcDifficulty is the difficulty adjustment algorithm. It returns the difficulty
|
// CalcDifficulty is the difficulty adjustment algorithm. It returns the difficulty
|
||||||
// that a new block should have based on the previous blocks in the chain and the
|
// that a new block should have:
|
||||||
// current signer.
|
// * DIFF_NOTURN(2) if BLOCK_NUMBER % SIGNER_COUNT != SIGNER_INDEX
|
||||||
|
// * DIFF_INTURN(1) if BLOCK_NUMBER % SIGNER_COUNT == SIGNER_INDEX
|
||||||
func (c *Clique) CalcDifficulty(chain consensus.ChainHeaderReader, time uint64, parent *types.Header) *big.Int {
|
func (c *Clique) CalcDifficulty(chain consensus.ChainHeaderReader, time uint64, parent *types.Header) *big.Int {
|
||||||
snap, err := c.snapshot(chain, parent.Number.Uint64(), parent.Hash(), nil)
|
snap, err := c.snapshot(chain, parent.Number.Uint64(), parent.Hash(), nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return CalcDifficulty(snap, c.signer)
|
return calcDifficulty(snap, c.signer)
|
||||||
}
|
}
|
||||||
|
|
||||||
// CalcDifficulty is the difficulty adjustment algorithm. It returns the difficulty
|
func calcDifficulty(snap *Snapshot, signer common.Address) *big.Int {
|
||||||
// that a new block should have based on the previous blocks in the chain and the
|
|
||||||
// current signer.
|
|
||||||
func CalcDifficulty(snap *Snapshot, signer common.Address) *big.Int {
|
|
||||||
if snap.inturn(snap.Number+1, signer) {
|
if snap.inturn(snap.Number+1, signer) {
|
||||||
return new(big.Int).Set(diffInTurn)
|
return new(big.Int).Set(diffInTurn)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user