diff options
author | Johnson Lau <jl2012@xbt.hk> | 2016-09-12 02:03:55 +0800 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2016-09-26 16:43:10 +0200 |
commit | a5ec2483235d5585e985715a5f66d41dbe1c424e (patch) | |
tree | 01aa945a6dd04cef29fe53a468fc716c2e39e05e /src | |
parent | b394a96396ce166bf2b519190fdc2a124f57eb5e (diff) |
Remove createwitnessaddress
This RPC command is unsafe as it will return an address even if the script is invalid.
Github-Pull: #8699
Rebased-From: 86c3f8db0bf64693313a81d5fe92ef603499030a
Diffstat (limited to 'src')
-rw-r--r-- | src/rpc/misc.cpp | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/src/rpc/misc.cpp b/src/rpc/misc.cpp index a8c5bcd177..06489566ba 100644 --- a/src/rpc/misc.cpp +++ b/src/rpc/misc.cpp @@ -320,43 +320,6 @@ UniValue createmultisig(const UniValue& params, bool fHelp) return result; } -UniValue createwitnessaddress(const UniValue& params, bool fHelp) -{ - if (fHelp || params.size() < 1 || params.size() > 1) - { - string msg = "createwitnessaddress \"script\"\n" - "\nCreates a witness address for a particular script.\n" - "It returns a json object with the address and witness script.\n" - - "\nArguments:\n" - "1. \"script\" (string, required) A hex encoded script\n" - - "\nResult:\n" - "{\n" - " \"address\":\"multisigaddress\", (string) The value of the new address (P2SH of witness script).\n" - " \"witnessScript\":\"script\" (string) The string value of the hex-encoded witness script.\n" - "}\n" - ; - throw runtime_error(msg); - } - - if (!IsHex(params[0].get_str())) { - throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, "Script must be hex-encoded"); - } - - std::vector<unsigned char> code = ParseHex(params[0].get_str()); - CScript script(code.begin(), code.end()); - CScript witscript = GetScriptForWitness(script); - CScriptID witscriptid(witscript); - CBitcoinAddress address(witscriptid); - - UniValue result(UniValue::VOBJ); - result.push_back(Pair("address", address.ToString())); - result.push_back(Pair("witnessScript", HexStr(witscript.begin(), witscript.end()))); - - return result; -} - UniValue verifymessage(const UniValue& params, bool fHelp) { if (fHelp || params.size() != 3) @@ -490,7 +453,6 @@ static const CRPCCommand commands[] = { "control", "getinfo", &getinfo, true }, /* uses wallet if enabled */ { "util", "validateaddress", &validateaddress, true }, /* uses wallet if enabled */ { "util", "createmultisig", &createmultisig, true }, - { "util", "createwitnessaddress", &createwitnessaddress, true }, { "util", "verifymessage", &verifymessage, true }, { "util", "signmessagewithprivkey", &signmessagewithprivkey, true }, |