From 3309959139cd8308367e83cf80d3639866beb268 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 2 Mar 2016 12:57:34 +0100 Subject: [PATCH 1/4] Additional check to ancient enactments. --- ethcore/src/client.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ethcore/src/client.rs b/ethcore/src/client.rs index f2894decb..803f5c9db 100644 --- a/ethcore/src/client.rs +++ b/ethcore/src/client.rs @@ -257,6 +257,14 @@ impl Client { let engine = self.engine.deref().deref(); let header = &block.header; + // Check the block isn't so old we won't be able to enact it. + let best_block_number = self.chain.read().unwrap().best_block_number(); + debug!("Best: {}, importing: {}", best_block_number, header.number()); + if header.number() <= best_block_number - HISTORY { + warn!(target: "client", "Block import failed for #{} ({})\nBlock is ancient (current best block: #{}).", header.number(), header.hash(), best_block_number); + return Err(()); + } + // Verify Block Family let verify_family_result = verify_block_family(&header, &block.bytes, engine, self.chain.read().unwrap().deref()); if let Err(e) = verify_family_result { From 47b47293323074f812a713477e435e18219c971f Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 2 Mar 2016 13:28:51 +0100 Subject: [PATCH 2/4] Fix check. --- ethcore/src/client.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ethcore/src/client.rs b/ethcore/src/client.rs index 268d99229..bf6f4bd71 100644 --- a/ethcore/src/client.rs +++ b/ethcore/src/client.rs @@ -268,7 +268,7 @@ impl Client { // Check the block isn't so old we won't be able to enact it. let best_block_number = self.chain.read().unwrap().best_block_number(); debug!("Best: {}, importing: {}", best_block_number, header.number()); - if header.number() <= best_block_number - HISTORY { + if best_block_number >= HISTORY && header.number() <= best_block_number - HISTORY { warn!(target: "client", "Block import failed for #{} ({})\nBlock is ancient (current best block: #{}).", header.number(), header.hash(), best_block_number); return Err(()); } From 1ae573bf21cc183bbffe06e1c2c84bc8c17c7e85 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 2 Mar 2016 13:40:11 +0100 Subject: [PATCH 3/4] Fix install-deps.sh. --- install-deps.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install-deps.sh b/install-deps.sh index 6cc7de002..7a5db1003 100755 --- a/install-deps.sh +++ b/install-deps.sh @@ -569,7 +569,7 @@ function run_installer() if [[ $isSudo == false ]]; then apt-get install -q -y sudo fi - curl -sf https://raw.githubusercontent.com/brson/multirust/master/blastoff.sh | sudo sh -s -- --yes + curl -sf https://raw.githubusercontent.com/brson/multirust/master/quick-install.sh | sudo sh -s -- --yes echo fi From 3c7814c8ac6882e3c9fe8b54e10c7ee2e14e5518 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 2 Mar 2016 15:43:48 +0100 Subject: [PATCH 4/4] Remove debug line. --- ethcore/src/client.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/ethcore/src/client.rs b/ethcore/src/client.rs index bf6f4bd71..cc5e23869 100644 --- a/ethcore/src/client.rs +++ b/ethcore/src/client.rs @@ -267,7 +267,6 @@ impl Client { // Check the block isn't so old we won't be able to enact it. let best_block_number = self.chain.read().unwrap().best_block_number(); - debug!("Best: {}, importing: {}", best_block_number, header.number()); if best_block_number >= HISTORY && header.number() <= best_block_number - HISTORY { warn!(target: "client", "Block import failed for #{} ({})\nBlock is ancient (current best block: #{}).", header.number(), header.hash(), best_block_number); return Err(());