aboutsummaryrefslogtreecommitdiff
path: root/src/rpcmisc.cpp
diff options
context:
space:
mode:
authorGavin Andresen <gavinandresen@gmail.com>2014-11-12 18:59:41 -0500
committerGavin Andresen <gavinandresen@gmail.com>2014-11-17 10:33:49 -0500
commita8b2ce557dbcee5e75001be0ec3aecf06165775f (patch)
treecbd24e8cbdf7d9b1cd2017d7b5bf0b3a76ea782d /src/rpcmisc.cpp
parentd6479ffc6a9e6505963175e51b5295a354dcd27c (diff)
downloadbitcoin-a8b2ce557dbcee5e75001be0ec3aecf06165775f.tar.xz
regression test only setmocktime RPC call
Diffstat (limited to 'src/rpcmisc.cpp')
-rw-r--r--src/rpcmisc.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/rpcmisc.cpp b/src/rpcmisc.cpp
index 08e956c961..31eaae6162 100644
--- a/src/rpcmisc.cpp
+++ b/src/rpcmisc.cpp
@@ -354,3 +354,23 @@ Value verifymessage(const Array& params, bool fHelp)
return (pubkey.GetID() == keyID);
}
+
+Value setmocktime(const Array& params, bool fHelp)
+{
+ if (fHelp || params.size() != 1)
+ throw runtime_error(
+ "setmocktime timestamp\n"
+ "\nSet the local time to given timestamp (-regtest only)\n"
+ "\nArguments:\n"
+ "1. timestamp (integer, required) Unix seconds-since-epoch timestamp\n"
+ " Pass 0 to go back to using the system time."
+ );
+
+ if (!Params().MineBlocksOnDemand())
+ throw runtime_error("setmocktime for regression testing (-regtest mode) only");
+
+ RPCTypeCheck(params, boost::assign::list_of(int_type));
+ SetMockTime(params[0].get_int64());
+
+ return Value::null;
+}