From 851665c18017d9372e62707e6c16ad74d8d26c44 Mon Sep 17 00:00:00 2001 From: suem Date: Sat, 20 Mar 2021 19:54:43 +0800 Subject: [PATCH] refuse the known bad block header on header receive processing --- servers/src/common/adapters.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/servers/src/common/adapters.rs b/servers/src/common/adapters.rs index 95c90a8f8b..a82015d728 100644 --- a/servers/src/common/adapters.rs +++ b/servers/src/common/adapters.rs @@ -341,6 +341,19 @@ where ) -> Result { // No need to process this header if we have previously accepted the _full block_. let bh_hash = bh.hash(); + + // A shortcut to refuse the known bad block header. + if bh_hash + == Hash::from_hex("00020440a401086e57e1b7a92ebb0277c7f7fd47a38269ecc6789c2a80333725")? + { + debug!( + "header_received: known bad header {} at {} refused by chain", + bh_hash, bh.height, + ); + // serious enough to need to ban the peer + return Ok(false); + } + if self.processed_headers.contains(&bh_hash, true) { debug!("header_received, cache for {} Rejected", bh_hash); return Ok(true);