|
|
@@ -171,6 +171,11 @@ func NewProtocolManager(config *params.ChainConfig, mode downloader.SyncMode, ne
|
|
|
return blockchain.CurrentBlock().NumberU64()
|
|
|
}
|
|
|
inserter := func(blocks types.Blocks) (int, error) {
|
|
|
+ // If fast sync is running, deny importing weird blocks
|
|
|
+ if atomic.LoadUint32(&manager.fastSync) == 1 {
|
|
|
+ log.Warn("Discarded bad propagated block", "number", blocks[0].Number(), "hash", blocks[0].Hash())
|
|
|
+ return 0, nil
|
|
|
+ }
|
|
|
atomic.StoreUint32(&manager.acceptTxs, 1) // Mark initial sync done on any fetcher import
|
|
|
return manager.blockchain.InsertChain(blocks)
|
|
|
}
|