aboutsummaryrefslogtreecommitdiff
path: root/src/bitcoin-tx.cpp
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2021-10-11 14:33:38 +0200
committerMarcoFalke <falke.marco@gmail.com>2021-10-12 12:45:55 +0200
commitfa6f29de516c7af5206b91b59ada466032329250 (patch)
treef801970990784f05f419ad5d14de16675d453654 /src/bitcoin-tx.cpp
parentfafab8ea5e6ed6b87fac57a5cd16a8135236cdd6 (diff)
downloadbitcoin-fa6f29de516c7af5206b91b59ada466032329250.tar.xz
bitcoin-tx: Reject non-integral and out of range multisig numbers
Diffstat (limited to 'src/bitcoin-tx.cpp')
-rw-r--r--src/bitcoin-tx.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/bitcoin-tx.cpp b/src/bitcoin-tx.cpp
index 4a9818d4ec..eb97cfc6f6 100644
--- a/src/bitcoin-tx.cpp
+++ b/src/bitcoin-tx.cpp
@@ -363,10 +363,10 @@ static void MutateTxAddOutMultiSig(CMutableTransaction& tx, const std::string& s
CAmount value = ExtractAndValidateValue(vStrInputParts[0]);
// Extract REQUIRED
- uint32_t required = stoul(vStrInputParts[1]);
+ const uint32_t required{TrimAndParse<uint32_t>(vStrInputParts.at(1), "invalid multisig required number")};
// Extract NUMKEYS
- uint32_t numkeys = stoul(vStrInputParts[2]);
+ const uint32_t numkeys{TrimAndParse<uint32_t>(vStrInputParts.at(2), "invalid multisig total number")};
// Validate there are the correct number of pubkeys
if (vStrInputParts.size() < numkeys + 3)