diff options
author | Andrew Chow <achow101-github@achow101.com> | 2017-09-29 00:21:28 -0400 |
---|---|---|
committer | Andrew Chow <achow101-github@achow101.com> | 2018-01-11 14:13:24 -0500 |
commit | 1df206f854d222230dcffd58e1b496567e570978 (patch) | |
tree | ae69bf08457642e4bd354461bbc391747605a1aa /src/rpc/util.h | |
parent | 0910cbe4ef31eb95fd76c7c2f820419fe64a3150 (diff) |
Disallow using addresses in createmultisig
Make createmultisig only accept public keys with the old functionality
marked as deprecated.
Splits _createmultisig_redeemscript into two functions, one for
getting public keys from UniValue and one for getting addresses
from UniValue and then their respective public keys. The one for
retrieving address's public keys is located in rpcwallet.cpp
Changes addwitnessaddress's output to be a JSON object with
two fields, address and redeemscript.
Adds a test to deprecated_rpc.py for testing the deprecation.
Update the tests to use addwitnessaddress or give only public keys
to createmultisig. Anything that used addwitnessaddress was also
updated to reflect the new API.
Diffstat (limited to 'src/rpc/util.h')
-rw-r--r-- | src/rpc/util.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/rpc/util.h b/src/rpc/util.h new file mode 100644 index 0000000000..568a4260ba --- /dev/null +++ b/src/rpc/util.h @@ -0,0 +1,19 @@ +// Copyright (c) 2017 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#ifndef BITCOIN_RPC_UTIL_H +#define BITCOIN_RPC_UTIL_H + +#include <string> +#include <vector> + +class CKeyStore; +class CPubKey; +class CScript; + +CPubKey HexToPubKey(const std::string& hex_in); +CPubKey AddrToPubKey(CKeyStore* const keystore, const std::string& addr_in); +CScript CreateMultisigRedeemscript(const int required, const std::vector<CPubKey>& pubkeys); + +#endif // BITCOIN_RPC_UTIL_H |