diff options
author | Sjors Provoost <sjors@sprovoost.nl> | 2024-02-13 13:25:59 +0100 |
---|---|---|
committer | Sjors Provoost <sjors@sprovoost.nl> | 2024-04-16 17:47:43 +0200 |
commit | 4357158c4712d479522d5cd441ad4dd1693fdd05 (patch) | |
tree | e53759850827b1275022fe3ea96a405dfd7226d6 /src/wallet/external_signer_scriptpubkeyman.h | |
parent | dc55531087478d01fbde4f5fbb75375b672960c3 (diff) | |
download | bitcoin-4357158c4712d479522d5cd441ad4dd1693fdd05.tar.xz |
wallet: return and display signer error
Both RPC and GUI now render a useful error message instead of (silently) failing.
Replace bool with util::Result<void> to clarify that this either succeeds or returns an error message.
Diffstat (limited to 'src/wallet/external_signer_scriptpubkeyman.h')
-rw-r--r-- | src/wallet/external_signer_scriptpubkeyman.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/wallet/external_signer_scriptpubkeyman.h b/src/wallet/external_signer_scriptpubkeyman.h index b249833271..44286456b6 100644 --- a/src/wallet/external_signer_scriptpubkeyman.h +++ b/src/wallet/external_signer_scriptpubkeyman.h @@ -9,6 +9,8 @@ #include <memory> +struct bilingual_str; + namespace wallet { class ExternalSignerScriptPubKeyMan : public DescriptorScriptPubKeyMan { @@ -27,7 +29,11 @@ class ExternalSignerScriptPubKeyMan : public DescriptorScriptPubKeyMan static ExternalSigner GetExternalSigner(); - bool DisplayAddress(const CTxDestination& dest, const ExternalSigner &signer) const; + /** + * Display address on the device and verify that the returned value matches. + * @returns nothing or an error message + */ + util::Result<void> DisplayAddress(const CTxDestination& dest, const ExternalSigner& signer) const; TransactionError FillPSBT(PartiallySignedTransaction& psbt, const PrecomputedTransactionData& txdata, int sighash_type = 1 /* SIGHASH_ALL */, bool sign = true, bool bip32derivs = false, int* n_signed = nullptr, bool finalize = true) const override; }; |