aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpasta <pasta@dashboost.org>2020-06-05 13:40:02 -0500
committerpasta <pasta@dashboost.org>2020-06-05 15:01:26 -0500
commita99a3c0bd6d5476503c015e23be569295fdd190c (patch)
treeead09fe9fa1e24c6cf9e2fa3c0413c4c8e895237
parent01b45b2e016f0b0907929e818216edf7157fb03a (diff)
rpc: Validate provided keys for query_options parameter in listunspent
With this change listunspent will throw an error if there is a wrong key in the query_option object. Signed-off-by: pasta <pasta@dashboost.org>
-rw-r--r--src/wallet/rpcwallet.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp
index 2a9ac189ea..2dbe88ad1a 100644
--- a/src/wallet/rpcwallet.cpp
+++ b/src/wallet/rpcwallet.cpp
@@ -2898,6 +2898,15 @@ static UniValue listunspent(const JSONRPCRequest& request)
if (!request.params[4].isNull()) {
const UniValue& options = request.params[4].get_obj();
+ RPCTypeCheckObj(options,
+ {
+ {"minimumAmount", UniValueType()},
+ {"maximumAmount", UniValueType()},
+ {"minimumSumAmount", UniValueType()},
+ {"maximumCount", UniValueType(UniValue::VNUM)},
+ },
+ true, true);
+
if (options.exists("minimumAmount"))
nMinimumAmount = AmountFromValue(options["minimumAmount"]);