eth/downloader: enable unsync-protection for light client (#19496)
* eth/downloader: enable unsync-protection for light client * eth/downloader: fix tests
This commit is contained in:
parent
6269e5574c
commit
749ccab9a4
@ -580,7 +580,7 @@ func (d *Downloader) fetchHeight(p *peerConnection) (*types.Header, error) {
|
|||||||
return nil, errBadPeer
|
return nil, errBadPeer
|
||||||
}
|
}
|
||||||
head := headers[0]
|
head := headers[0]
|
||||||
if d.mode == FastSync && head.Number.Uint64() < d.checkpoint {
|
if (d.mode == FastSync || d.mode == LightSync) && head.Number.Uint64() < d.checkpoint {
|
||||||
p.log.Warn("Remote head below checkpoint", "number", head.Number, "hash", head.Hash())
|
p.log.Warn("Remote head below checkpoint", "number", head.Number, "hash", head.Hash())
|
||||||
return nil, errUnsyncedPeer
|
return nil, errUnsyncedPeer
|
||||||
}
|
}
|
||||||
|
@ -1594,13 +1594,13 @@ func testCheckpointEnforcement(t *testing.T, protocol int, mode SyncMode) {
|
|||||||
tester.newPeer("peer", protocol, chain)
|
tester.newPeer("peer", protocol, chain)
|
||||||
|
|
||||||
var expect error
|
var expect error
|
||||||
if mode == FastSync {
|
if mode == FastSync || mode == LightSync {
|
||||||
expect = errUnsyncedPeer
|
expect = errUnsyncedPeer
|
||||||
}
|
}
|
||||||
if err := tester.sync("peer", nil, mode); err != expect {
|
if err := tester.sync("peer", nil, mode); err != expect {
|
||||||
t.Fatalf("block sync error mismatch: have %v, want %v", err, expect)
|
t.Fatalf("block sync error mismatch: have %v, want %v", err, expect)
|
||||||
}
|
}
|
||||||
if mode == FastSync {
|
if mode == FastSync || mode == LightSync {
|
||||||
assertOwnChain(t, tester, 1)
|
assertOwnChain(t, tester, 1)
|
||||||
} else {
|
} else {
|
||||||
assertOwnChain(t, tester, chain.len())
|
assertOwnChain(t, tester, chain.len())
|
||||||
|
Loading…
Reference in New Issue
Block a user