Add new RPC "lockunspent", to prevent spending of selected outputs

and associated RPC "listlockunspent".

This is a memory-only filter, which is empty when a node restarts.
This commit is contained in:
Jeff Garzik
2012-09-27 13:52:09 -04:00
committed by Jeff Garzik
parent 6caffb5358
commit fdbb537d26
5 changed files with 125 additions and 3 deletions

View File

@@ -254,6 +254,8 @@ static const CRPCCommand vRPCCommands[] =
{ "sendrawtransaction", &sendrawtransaction, false, false },
{ "gettxoutsetinfo", &gettxoutsetinfo, true, false },
{ "gettxout", &gettxout, true, false },
{ "lockunspent", &lockunspent, false, false },
{ "listlockunspent", &listlockunspent, false, false },
};
CRPCTable::CRPCTable()
@@ -1213,6 +1215,8 @@ Array RPCConvertValues(const std::string &strMethod, const std::vector<std::stri
if (strMethod == "signrawtransaction" && n > 2) ConvertTo<Array>(params[2], true);
if (strMethod == "gettxout" && n > 1) ConvertTo<boost::int64_t>(params[1]);
if (strMethod == "gettxout" && n > 2) ConvertTo<bool>(params[2]);
if (strMethod == "lockunspent" && n > 0) ConvertTo<bool>(params[0]);
if (strMethod == "lockunspent" && n > 1) ConvertTo<Array>(params[1]);
return params;
}