X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=blobdiff_plain;f=src%2Fbitcoinrpc.cpp;h=dbbe67f1777d168c5cea2abdf9e52ba441b59819;hp=033250fe84ea5602a931c9fd8b906966712e69c9;hb=9c28b3c6a120e07c3a0caea8e17e02c072e686b2;hpb=d56fde1346ccd32ca6a6e98d9a0a84c8fa9939e7 diff --git a/src/bitcoinrpc.cpp b/src/bitcoinrpc.cpp index 033250f..dbbe67f 100644 --- a/src/bitcoinrpc.cpp +++ b/src/bitcoinrpc.cpp @@ -2026,6 +2026,13 @@ Value sendcheckpoint(const Array& params, bool fHelp) throw runtime_error( "Provided checkpoint block is not on main chain\n"); } + else + { + checkpoint.hashCheckpoint = Checkpoints::AutoSelectSyncCheckpoint(); + if (checkpoint.hashCheckpoint == Checkpoints::hashSyncCheckpoint) + throw runtime_error( + "Unable to select a more recent sync-checkpoint"); + } CDataStream sMsg; sMsg << (CUnsignedSyncCheckpoint)checkpoint; @@ -2045,7 +2052,11 @@ Value sendcheckpoint(const Array& params, bool fHelp) BOOST_FOREACH(CNode* pnode, vNodes) checkpoint.RelayTo(pnode); - return Value::null; + Object result; + result.push_back(Pair("checkpoint", Checkpoints::hashSyncCheckpoint.ToString().c_str())); + result.push_back(Pair("height", mapBlockIndex[Checkpoints::hashSyncCheckpoint]->nHeight)); + result.push_back(Pair("timestamp", DateTimeStrFormat("%x %H:%M:%S", mapBlockIndex[Checkpoints::hashSyncCheckpoint]->GetBlockTime()).c_str())); + return result; }