scanback check to prevent adding to the 74638 overflow chain
authors_nakamoto <s_nakamoto@1a98c847-1fd6-4fd8-948a-caf3550aa51b>
Sun, 15 Aug 2010 22:21:03 +0000 (22:21 +0000)
committers_nakamoto <s_nakamoto@1a98c847-1fd6-4fd8-948a-caf3550aa51b>
Sun, 15 Aug 2010 22:21:03 +0000 (22:21 +0000)
git-svn-id: https://bitcoin.svn.sourceforge.net/svnroot/bitcoin/trunk@133 1a98c847-1fd6-4fd8-948a-caf3550aa51b

main.cpp
serialize.h

index 0977b32..6fe0c0e 100644 (file)
--- a/main.cpp
+++ b/main.cpp
@@ -1393,7 +1393,16 @@ bool CBlock::AcceptBlock()
         (pindexPrev->nHeight+1 == 68555 && hash != uint256("0x00000000001e1b4903550a0b96e9a9405c8a95f387162e4944e8d9fbe501cd6a")) ||\r
         (pindexPrev->nHeight+1 == 70567 && hash != uint256("0x00000000006a49b14bcf27462068f1264c961f11fa2e0eddd2be0791e1d4124a")) ||\r
         (pindexPrev->nHeight+1 == 74000 && hash != uint256("0x0000000000573993a3c9e41ce34471c079dcf5f52a0e824a81e7f953b8661a20")))\r
-        return error("AcceptBlock() : rejected by checkpoint lockin");\r
+        return error("AcceptBlock() : rejected by checkpoint lockin at %d", pindexPrev->nHeight+1);\r
+\r
+    // Scanback checkpoint lockin\r
+    for (CBlockIndex* pindex = pindexPrev; pindex->nHeight >= 74000; pindex = pindex->pprev)\r
+    {\r
+        if (pindex->nHeight == 74000 && pindex->GetBlockHash() != uint256("0x0000000000573993a3c9e41ce34471c079dcf5f52a0e824a81e7f953b8661a20"))\r
+            return error("AcceptBlock() : rejected by scanback lockin at %d", pindex->nHeight);\r
+        if (pindex->nHeight == 74638 && pindex->GetBlockHash() == uint256("0x0000000000790ab3f22ec756ad43b6ab569abf0bddeb97c67a6f7b1470a7ec1c"))\r
+            return error("AcceptBlock() : rejected by scanback lockin at %d", pindex->nHeight);\r
+    }\r
 \r
     // Write block to history file\r
     if (!CheckDiskSpace(::GetSerializeSize(*this, SER_DISK)))\r
index b781b19..208a96d 100644 (file)
@@ -20,7 +20,7 @@ class CDataStream;
 class CAutoFile;\r
 \r
 static const int VERSION = 310;\r
-static const char* pszSubVer = ".0";\r
+static const char* pszSubVer = ".1";\r
 \r
 \r
 \r