X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=src%2Frpcmining.cpp;h=62d8837d4e174bc7e4ebad6db83512e4ae7ad28e;hb=510a23a2c838245cd4681ed0b4fbce48e8ebf506;hp=71b47d4adf7026bfb1103158f9b9c6a8cba87a9b;hpb=749faf6d4decb3b364cc981060fd4a26dab82df8;p=novacoin.git diff --git a/src/rpcmining.cpp b/src/rpcmining.cpp index 71b47d4..62d8837 100644 --- a/src/rpcmining.cpp +++ b/src/rpcmining.cpp @@ -13,7 +13,6 @@ #include #include -#include using namespace json_spirit; using namespace std; @@ -50,7 +49,7 @@ Value getmininginfo(const Array& params, bool fHelp) "getmininginfo\n" "Returns an object containing mining-related information."); - Object obj, diff, weight; + Object obj, diff; obj.push_back(Pair("blocks", (int)nBestHeight)); obj.push_back(Pair("currentblocksize",(uint64_t)nLastBlockSize)); obj.push_back(Pair("currentblocktx",(uint64_t)nLastBlockTx)); @@ -78,7 +77,7 @@ Value scaninput(const Array& params, bool fHelp) { if (fHelp || params.size() != 1) throw runtime_error( - "scaninput '{\"txid\":txid, \"vout\":[vout1, vout2, ..., voutN], \"difficulty\":difficulty, \"days\":days}'\n" + "scaninput '{\"txid\":\"txid\", \"vout\":[vout1, vout2, ..., voutN], \"difficulty\":difficulty, \"days\":days}'\n" "Scan specified transaction or input for suitable kernel solutions.\n" " difficulty - upper limit for difficulty, current difficulty by default;\n" " days - time window, 90 days by default.\n" @@ -147,9 +146,21 @@ Value scaninput(const Array& params, bool fHelp) vInputs.push_back(nOut); } } + else if(inputs_v.type() == int_type) + { + int nOut = inputs_v.get_int(); + if (nOut < 0 || nOut > (int)tx.vout.size() - 1) + { + stringstream strErrorMsg; + strErrorMsg << boost::format("Invalid parameter, input number %d is out of range") % nOut; + throw JSONRPCError(RPC_INVALID_PARAMETER, strErrorMsg.str()); + } + + vInputs.push_back(nOut); + } else { - vInputs = vector(boost::counting_iterator( 0 ), boost::counting_iterator( tx.vout.size() )); + for (size_t i = 0; i != tx.vout.size(); ++i) vInputs.push_back(i); } CTxDB txdb("r");