From 104613a0a6b9a874f9f7c2b3d19ec852fa8c3277 Mon Sep 17 00:00:00 2001 From: Arthur Britto Date: Mon, 14 Jan 2013 17:00:09 -0800 Subject: [PATCH] Add command line support for sign. --- src/cpp/ripple/CallRPC.cpp | 23 +++++++++++++++++++---- src/cpp/ripple/CallRPC.h | 2 +- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/cpp/ripple/CallRPC.cpp b/src/cpp/ripple/CallRPC.cpp index 1f498a047..2b6ffff98 100644 --- a/src/cpp/ripple/CallRPC.cpp +++ b/src/cpp/ripple/CallRPC.cpp @@ -285,14 +285,28 @@ Json::Value RPCParser::parseRipplePathFind(const Json::Value& jvParams) return rpcError(rpcINVALID_PARAMS); } -// submit any transaction to the network +// sign/submit any transaction to the network +// +// sign private_key json // submit private_key json -Json::Value RPCParser::parseSubmit(const Json::Value& jvParams) +// submit tx_blob +Json::Value RPCParser::parseSignSubmit(const Json::Value& jvParams) { Json::Value txJSON; Json::Reader reader; - if (reader.parse(jvParams[1u].asString(), txJSON)) + if (1 == jvParams.size()) + { + // Submitting tx_blob + + Json::Value jvRequest; + + jvRequest["tx_blob"] = jvParams[0u].asString(); + + return jvRequest; + } + // Submitting tx_json. + else if (reader.parse(jvParams[1u].asString(), txJSON)) { Json::Value jvRequest; @@ -459,7 +473,8 @@ Json::Value RPCParser::parseCommand(std::string strMethod, Json::Value jvParams) // { "profile", &RPCParser::parseProfile, 1, 9 }, { "random", &RPCParser::parseAsIs, 0, 0 }, { "ripple_path_find", &RPCParser::parseRipplePathFind, 1, 1 }, - { "submit", &RPCParser::parseSubmit, 2, 2 }, + { "sign", &RPCParser::parseSignSubmit, 2, 2 }, + { "submit", &RPCParser::parseSignSubmit, 1, 2 }, { "server_info", &RPCParser::parseAsIs, 0, 0 }, { "stop", &RPCParser::parseAsIs, 0, 0 }, // { "transaction_entry", &RPCParser::parseTransactionEntry, -1, -1 }, diff --git a/src/cpp/ripple/CallRPC.h b/src/cpp/ripple/CallRPC.h index 4c893256c..1d6c4d2c7 100644 --- a/src/cpp/ripple/CallRPC.h +++ b/src/cpp/ripple/CallRPC.h @@ -30,7 +30,7 @@ protected: Json::Value parseOwnerInfo(const Json::Value& jvParams); Json::Value parseRandom(const Json::Value& jvParams); Json::Value parseRipplePathFind(const Json::Value& jvParams); - Json::Value parseSubmit(const Json::Value& jvParams); + Json::Value parseSignSubmit(const Json::Value& jvParams); Json::Value parseTx(const Json::Value& jvParams); Json::Value parseTxHistory(const Json::Value& jvParams); Json::Value parseUnlAdd(const Json::Value& jvParams);