PPCoin: Reset sync-checkpoint when checkpoint master key changes
[novacoin.git] / src / db.h
index 75748ac..038c6c4 100644 (file)
--- a/src/db.h
+++ b/src/db.h
@@ -1,5 +1,6 @@
 // Copyright (c) 2009-2010 Satoshi Nakamoto
 // Copyright (c) 2011 The Bitcoin developers
+// Copyright (c) 2011-2012 The PPCoin developers
 // Distributed under the MIT/X11 software license, see the accompanying
 // file license.txt or http://www.opensource.org/licenses/mit-license.php.
 #ifndef BITCOIN_DB_H
@@ -28,11 +29,9 @@ class CBlockLocator;
 extern unsigned int nWalletDBUpdated;
 extern DbEnv dbenv;
 
-
 extern void DBFlush(bool fShutdown);
 void ThreadFlushWalletDB(void* parg);
 bool BackupWallet(const CWallet& wallet, const std::string& strDest);
-extern bool Resilver(const std::string& strFile);
 
 
 
@@ -258,7 +257,7 @@ public:
         return Write(std::string("version"), nVersion);
     }
 
-    friend bool Resilver(const std::string&);
+    bool static Rewrite(const std::string& strFile, const char* pszSkip = NULL);
 };
 
 
@@ -290,8 +289,12 @@ public:
     bool EraseBlockIndex(uint256 hash);
     bool ReadHashBestChain(uint256& hashBestChain);
     bool WriteHashBestChain(uint256 hashBestChain);
-    bool ReadBestInvalidWork(CBigNum& bnBestInvalidWork);
-    bool WriteBestInvalidWork(CBigNum bnBestInvalidWork);
+    bool ReadBestInvalidTrust(uint64& nBestInvalidTrust);
+    bool WriteBestInvalidTrust(uint64 nBestInvalidTrust);
+    bool ReadSyncCheckpoint(uint256& hashCheckpoint);
+    bool WriteSyncCheckpoint(uint256 hashCheckpoint);
+    bool ReadCheckpointPubKey(std::string& strPubKey);
+    bool WriteCheckpointPubKey(const std::string& strPubKey);
     bool LoadBlockIndex();
 };
 
@@ -351,7 +354,7 @@ enum DBErrors
     DB_CORRUPT,
     DB_TOO_NEW,
     DB_LOAD_FAIL,
-    DB_NEED_RESILVER
+    DB_NEED_REWRITE
 };
 
 class CWalletDB : public CDB