mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-05-13 03:26:38 +00:00
core/forkid: fix off-by-one bug (#22879)
* forkid: added failing test * forkid: fixed off-by-one bug
This commit is contained in:
parent
b7a91663ab
commit
32c1ed8a9c
2 changed files with 5 additions and 1 deletions
|
|
@ -155,7 +155,7 @@ func newFilter(config *params.ChainConfig, genesis common.Hash, headfn func() ui
|
||||||
for i, fork := range forks {
|
for i, fork := range forks {
|
||||||
// If our head is beyond this fork, continue to the next (we have a dummy
|
// If our head is beyond this fork, continue to the next (we have a dummy
|
||||||
// fork of maxuint64 as the last item to always fail this check eventually).
|
// fork of maxuint64 as the last item to always fail this check eventually).
|
||||||
if head > fork {
|
if head >= fork {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
// Found the first unpassed fork block, check if our current state matches
|
// Found the first unpassed fork block, check if our current state matches
|
||||||
|
|
|
||||||
|
|
@ -163,6 +163,10 @@ func TestValidation(t *testing.T) {
|
||||||
// neither forks passed at neither nodes, they may mismatch, but we still connect for now.
|
// neither forks passed at neither nodes, they may mismatch, but we still connect for now.
|
||||||
{7279999, ID{Hash: checksumToBytes(0xa00bc324), Next: math.MaxUint64}, nil},
|
{7279999, ID{Hash: checksumToBytes(0xa00bc324), Next: math.MaxUint64}, nil},
|
||||||
|
|
||||||
|
// Local is mainnet exactly on Petersburg, remote announces Byzantium + knowledge about Petersburg. Remote
|
||||||
|
// is simply out of sync, accept.
|
||||||
|
{7280000, ID{Hash: checksumToBytes(0xa00bc324), Next: 7280000}, nil},
|
||||||
|
|
||||||
// Local is mainnet Petersburg, remote announces Byzantium + knowledge about Petersburg. Remote
|
// Local is mainnet Petersburg, remote announces Byzantium + knowledge about Petersburg. Remote
|
||||||
// is simply out of sync, accept.
|
// is simply out of sync, accept.
|
||||||
{7987396, ID{Hash: checksumToBytes(0xa00bc324), Next: 7280000}, nil},
|
{7987396, ID{Hash: checksumToBytes(0xa00bc324), Next: 7280000}, nil},
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue