Mercurial > hg > bitcoin
changeset 228:78000f16ad7e draft
scanback check to prevent adding to the 74638 overflow chain
git-svn-id: https://bitcoin.svn.sourceforge.net/svnroot/bitcoin/trunk@133 1a98c847-1fd6-4fd8-948a-caf3550aa51b
author | s_nakamoto <s_nakamoto@1a98c847-1fd6-4fd8-948a-caf3550aa51b> |
---|---|
date | Sun, 15 Aug 2010 22:21:03 +0000 |
parents | 514383c38156 |
children | 14ab309ef50e |
files | main.cpp serialize.h |
diffstat | 2 files changed, 11 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/main.cpp +++ b/main.cpp @@ -1393,7 +1393,16 @@ (pindexPrev->nHeight+1 == 68555 && hash != uint256("0x00000000001e1b4903550a0b96e9a9405c8a95f387162e4944e8d9fbe501cd6a")) || (pindexPrev->nHeight+1 == 70567 && hash != uint256("0x00000000006a49b14bcf27462068f1264c961f11fa2e0eddd2be0791e1d4124a")) || (pindexPrev->nHeight+1 == 74000 && hash != uint256("0x0000000000573993a3c9e41ce34471c079dcf5f52a0e824a81e7f953b8661a20"))) - return error("AcceptBlock() : rejected by checkpoint lockin"); + return error("AcceptBlock() : rejected by checkpoint lockin at %d", pindexPrev->nHeight+1); + + // Scanback checkpoint lockin + for (CBlockIndex* pindex = pindexPrev; pindex->nHeight >= 74000; pindex = pindex->pprev) + { + if (pindex->nHeight == 74000 && pindex->GetBlockHash() != uint256("0x0000000000573993a3c9e41ce34471c079dcf5f52a0e824a81e7f953b8661a20")) + return error("AcceptBlock() : rejected by scanback lockin at %d", pindex->nHeight); + if (pindex->nHeight == 74638 && pindex->GetBlockHash() == uint256("0x0000000000790ab3f22ec756ad43b6ab569abf0bddeb97c67a6f7b1470a7ec1c")) + return error("AcceptBlock() : rejected by scanback lockin at %d", pindex->nHeight); + } // Write block to history file if (!CheckDiskSpace(::GetSerializeSize(*this, SER_DISK)))