X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=src%2Fcheckpoints.h;h=3dec98bae8172773ba1b5c62a1431c48173863bd;hb=83e34b29071b58d6578b197430d12c55d277a515;hp=c09e568a47ec4a5bdb0d14b8174a6f6e98cec157;hpb=09f2a990950512cbe418526d91838887a0dded2a;p=novacoin.git diff --git a/src/checkpoints.h b/src/checkpoints.h index c09e568..3dec98b 100644 --- a/src/checkpoints.h +++ b/src/checkpoints.h @@ -1,24 +1,26 @@ -// Copyright (c) 2011 The Bitcoin developers +// Copyright (c) 2009-2012 The Bitcoin developers // Copyright (c) 2011-2012 The PPCoin developers +// Copyright (c) 2012-2013 The NovaCoin developers // Distributed under the MIT/X11 software license, see the accompanying -// file license.txt or http://www.opensource.org/licenses/mit-license.php. +// file COPYING or http://www.opensource.org/licenses/mit-license.php. #ifndef BITCOIN_CHECKPOINT_H #define BITCOIN_CHECKPOINT_H #include +#include "net.h" #include "util.h" -#define STAKE_MIN_AGE (60 * 60 * 24) // minimum age for coin age -#define CHECKPOINT_MIN_SPAN (60 * 60 * 4) // 4 hours checkpoint +#define STAKE_MIN_AGE (60 * 60 * 24 * 30) // minimum age 30 days for coin age +#define STAKE_MAX_AGE (60 * 60 * 24 * 90) // stake age for full weight +#define CHECKPOINT_MAX_SPAN (60 * 60 * 4) // max 4 hours before latest block class uint256; class CBlockIndex; class CSyncCheckpoint; -// -// Block-chain checkpoints are compiled-in sanity checks. -// They are updated every release or three. -// +/** Block-chain checkpoints are compiled-in sanity checks. + * They are updated every release or three. + */ namespace Checkpoints { // Returns true if block passes checkpoint checks @@ -43,6 +45,9 @@ namespace Checkpoints bool WantedByPendingSyncCheckpoint(uint256 hashBlock); bool ResetSyncCheckpoint(); void AskForPendingSyncCheckpoint(CNode* pfrom); + bool SetCheckpointPrivKey(std::string strPrivKey); + bool SendSyncCheckpoint(uint256 hashCheckpoint); + bool IsMatureSyncCheckpoint(); } // ppcoin: synchronized checkpoint @@ -86,6 +91,7 @@ class CSyncCheckpoint : public CUnsignedSyncCheckpoint { public: static const std::string strMasterPubKey; + static std::string strMasterPrivKey; std::vector vchMsg; std::vector vchSig;