@@ -211,6 +211,7 @@ class ScriptPubKeyMan
211
211
virtual bool SignTransaction (CMutableTransaction& tx, const std::map<COutPoint, Coin>& coins, int sighash, std::map<int , std::string>& input_errors) const { return false ; }
212
212
/* * Sign a message with the given script */
213
213
virtual SigningResult SignMessage (const std::string& message, const PKHash& pkhash, std::string& str_sig) const { return SigningResult::SIGNING_FAILED; };
214
+ virtual bool SignSpecialTxPayload (const uint256& hash, const CKeyID& keyid, std::vector<unsigned char >& vchSig) const { return false ; }
214
215
/* * Adds script and derivation path information to a PSBT, and optionally signs it. */
215
216
virtual TransactionError FillPSBT (PartiallySignedTransaction& psbt, int sighash_type = 1 /* SIGHASH_ALL */ , bool sign = true , bool bip32derivs = false , int * n_signed = nullptr ) const { return TransactionError::INVALID_PSBT; }
216
217
@@ -358,6 +359,7 @@ class LegacyScriptPubKeyMan : public ScriptPubKeyMan, public FillableSigningProv
358
359
359
360
bool SignTransaction (CMutableTransaction& tx, const std::map<COutPoint, Coin>& coins, int sighash, std::map<int , std::string>& input_errors) const override ;
360
361
SigningResult SignMessage (const std::string& message, const PKHash& pkhash, std::string& str_sig) const override ;
362
+ bool SignSpecialTxPayload (const uint256& hash, const CKeyID& keyid, std::vector<unsigned char >& vchSig) const override ;
361
363
TransactionError FillPSBT (PartiallySignedTransaction& psbt, int sighash_type = 1 /* SIGHASH_ALL */ , bool sign = true , bool bip32derivs = false , int * n_signed = nullptr ) const override ;
362
364
363
365
uint256 GetID () const override ;
@@ -588,6 +590,7 @@ class DescriptorScriptPubKeyMan : public ScriptPubKeyMan
588
590
589
591
bool SignTransaction (CMutableTransaction& tx, const std::map<COutPoint, Coin>& coins, int sighash, std::map<int , std::string>& input_errors) const override ;
590
592
SigningResult SignMessage (const std::string& message, const PKHash& pkhash, std::string& str_sig) const override ;
593
+ bool SignSpecialTxPayload (const uint256& hash, const CKeyID& keyid, std::vector<unsigned char >& vchSig) const override ;
591
594
TransactionError FillPSBT (PartiallySignedTransaction& psbt, int sighash_type = 1 /* SIGHASH_ALL */ , bool sign = true , bool bip32derivs = false , int * n_signed = nullptr ) const override ;
592
595
593
596
uint256 GetID () const override ;
0 commit comments