mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-02 09:46:52 -05:00
Merge bitcoin/bitcoin#29870: rpc: Reword SighashFromStr error message
fa6ab0d020
rpc: Reword SighashFromStr error message (MarcoFalke) Pull request description: Put quotes around the parameter. In theory, `std::quoted` should be used, but that seems overkill. This should avoid error messages such as `A valid sighash parameter is not a valid sighash parameter. (code -8)`. Also, it should fix fuzz false positives when searching for internal bugs in the `rpc` fuzz target. For example, `ZGVzY3JpcHRvcnByb2Nlc3Nwc2J0XP9ce1tdXOVJbnRlcm5hbCBidWcgZGV0ZWN0ZWQAXQ0AHfcAXQ1p7TJv`. ACKs for top commit: dergoegge: ACKfa6ab0d020
brunoerg: utACKfa6ab0d020
Tree-SHA512: e2c0cc0126de61873a863af38b7b0a23d2dadd596ca0418dae2ad091e8acfb6a9d657c376d59187bb008989dc78c6b44fe518590e5217e4049a867b220c9fb18
This commit is contained in:
commit
9e0e51b1d9
4 changed files with 5 additions and 5 deletions
|
@ -256,6 +256,6 @@ util::Result<int> SighashFromStr(const std::string& sighash)
|
|||
if (it != map_sighash_values.end()) {
|
||||
return it->second;
|
||||
} else {
|
||||
return util::Error{Untranslated(sighash + " is not a valid sighash parameter.")};
|
||||
return util::Error{Untranslated("'" + sighash + "' is not a valid sighash parameter.")};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -877,7 +877,7 @@ class PSBTTest(BitcoinTestFramework):
|
|||
assert_equal(comb_psbt, psbt)
|
||||
|
||||
self.log.info("Test walletprocesspsbt raises if an invalid sighashtype is passed")
|
||||
assert_raises_rpc_error(-8, "all is not a valid sighash parameter.", self.nodes[0].walletprocesspsbt, psbt, sighashtype="all")
|
||||
assert_raises_rpc_error(-8, "'all' is not a valid sighash parameter.", self.nodes[0].walletprocesspsbt, psbt, sighashtype="all")
|
||||
|
||||
self.log.info("Test decoding PSBT with per-input preimage types")
|
||||
# note that the decodepsbt RPC doesn't check whether preimages and hashes match
|
||||
|
@ -983,7 +983,7 @@ class PSBTTest(BitcoinTestFramework):
|
|||
self.nodes[2].sendrawtransaction(processed_psbt['hex'])
|
||||
|
||||
self.log.info("Test descriptorprocesspsbt raises if an invalid sighashtype is passed")
|
||||
assert_raises_rpc_error(-8, "all is not a valid sighash parameter.", self.nodes[2].descriptorprocesspsbt, psbt, [descriptor], sighashtype="all")
|
||||
assert_raises_rpc_error(-8, "'all' is not a valid sighash parameter.", self.nodes[2].descriptorprocesspsbt, psbt, [descriptor], sighashtype="all")
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
@ -124,7 +124,7 @@ class SignRawTransactionWithKeyTest(BitcoinTestFramework):
|
|||
self.log.info("Test signing transaction with invalid sighashtype")
|
||||
tx = self.nodes[0].createrawtransaction(INPUTS, OUTPUTS)
|
||||
privkeys = [self.nodes[0].get_deterministic_priv_key().key]
|
||||
assert_raises_rpc_error(-8, "all is not a valid sighash parameter.", self.nodes[0].signrawtransactionwithkey, tx, privkeys, sighashtype="all")
|
||||
assert_raises_rpc_error(-8, "'all' is not a valid sighash parameter.", self.nodes[0].signrawtransactionwithkey, tx, privkeys, sighashtype="all")
|
||||
|
||||
def run_test(self):
|
||||
self.successful_signing_test()
|
||||
|
|
|
@ -55,7 +55,7 @@ class SignRawTransactionWithWalletTest(BitcoinTestFramework):
|
|||
|
||||
def test_with_invalid_sighashtype(self):
|
||||
self.log.info("Test signrawtransactionwithwallet raises if an invalid sighashtype is passed")
|
||||
assert_raises_rpc_error(-8, "all is not a valid sighash parameter.", self.nodes[0].signrawtransactionwithwallet, hexstring=RAW_TX, sighashtype="all")
|
||||
assert_raises_rpc_error(-8, "'all' is not a valid sighash parameter.", self.nodes[0].signrawtransactionwithwallet, hexstring=RAW_TX, sighashtype="all")
|
||||
|
||||
def script_verification_error_test(self):
|
||||
"""Create and sign a raw transaction with valid (vin 0), invalid (vin 1) and one missing (vin 2) input script.
|
||||
|
|
Loading…
Add table
Reference in a new issue