diff --git a/src/wallet/scriptpubkeyman.h b/src/wallet/scriptpubkeyman.h --- a/src/wallet/scriptpubkeyman.h +++ b/src/wallet/scriptpubkeyman.h @@ -253,10 +253,23 @@ return false; } + /** + * Creates new signatures and adds them to the transaction. Returns whether + * all inputs were signed + */ + virtual bool + SignTransaction(CMutableTransaction &tx, + const std::map &coins, SigHashType sighash, + std::map &input_errors) const { + return false; + } + virtual uint256 GetID() const { return uint256(); } - /** Prepends the wallet name in logging output to ease debugging in - * multi-wallet use cases */ + /** + * Prepends the wallet name in logging output to ease debugging in + * multi-wallet use cases + */ template void WalletLogPrintf(std::string fmt, Params... parameters) const { LogPrintf(("%s " + fmt).c_str(), m_storage.GetDisplayName(), @@ -418,6 +431,11 @@ bool CanProvide(const CScript &script, SignatureData &sigdata) override; + bool + SignTransaction(CMutableTransaction &tx, + const std::map &coins, SigHashType sighash, + std::map &input_errors) const override; + uint256 GetID() const override; // Map from Key ID to key metadata. diff --git a/src/wallet/scriptpubkeyman.cpp b/src/wallet/scriptpubkeyman.cpp --- a/src/wallet/scriptpubkeyman.cpp +++ b/src/wallet/scriptpubkeyman.cpp @@ -6,6 +6,7 @@ #include #include #include