|
| util::Result< void > | DisplayAddress (const CTxDestination &dest, const ExternalSigner &signer) const |
| | Display address on the device and verify that the returned value matches.
|
| std::optional< common::PSBTError > | FillPSBT (PartiallySignedTransaction &psbt, const PrecomputedTransactionData &txdata, const common::PSBTFillOptions &options, int *n_signed=nullptr) const override |
| | Adds script and derivation path information to a PSBT, and optionally signs it.
|
| util::Result< CTxDestination > | GetNewDestination (OutputType type) override |
| bool | IsMine (const CScript &script) const override |
| bool | CheckDecryptionKey (const CKeyingMaterial &master_key) override |
| | Check that the given decryption key is valid for this ScriptPubKeyMan, i.e. it decrypts all of the keys handled by it.
|
| bool | Encrypt (const CKeyingMaterial &master_key, WalletBatch *batch) override |
| util::Result< CTxDestination > | GetReservedDestination (OutputType type, bool internal, int64_t &index) override |
| void | ReturnDestination (int64_t index, bool internal, const CTxDestination &addr) override |
| bool | TopUp (unsigned int size=0) override |
| | Fills internal address pool.
|
| std::vector< WalletDestination > | MarkUnusedAddresses (const CScript &script) override |
| | Mark unused addresses as being used Affects all keys up to and including the one determined by provided script.
|
| bool | IsHDEnabled () const override |
| bool | HavePrivateKeys () const override |
| bool | HasPrivKey (const CKeyID &keyid) const EXCLUSIVE_LOCKS_REQUIRED(cs_desc_man) |
| std::optional< CKey > | GetKey (const CKeyID &keyid) const EXCLUSIVE_LOCKS_REQUIRED(cs_desc_man) |
| | Retrieve the particular key if it is available. Returns nullopt if the key is not in the wallet, or if the wallet is locked.
|
| bool | HaveCryptedKeys () const override |
| unsigned int | GetKeyPoolSize () const override |
| int64_t | GetTimeFirstKey () const override |
| std::unique_ptr< CKeyMetadata > | GetMetadata (const CTxDestination &dest) const override |
| bool | CanGetAddresses (bool internal=false) const override |
| std::unique_ptr< SigningProvider > | GetSolvingProvider (const CScript &script) const override |
| bool | CanProvide (const CScript &script, SignatureData &sigdata) override |
| | Whether this ScriptPubKeyMan can provide a SigningProvider (via GetSolvingProvider) that, combined with sigdata, can produce solving data.
|
| std::unique_ptr< FlatSigningProvider > | GetSigningProvider (const CPubKey &pubkey) const |
| bool | SignTransaction (CMutableTransaction &tx, const std::map< COutPoint, Coin > &coins, int sighash, std::map< int, bilingual_str > &input_errors) const override |
| | Creates new signatures and adds them to the transaction.
|
| SigningResult | SignMessage (const std::string &message, const PKHash &pkhash, std::string &str_sig) const override |
| | Sign a message with the given script.
|
| uint256 | GetID () const override |
| bool | HasWalletDescriptor (const WalletDescriptor &desc) const |
| util::Result< void > | UpdateWalletDescriptor (WalletDescriptor &descriptor, const FlatSigningProvider &provider) |
| bool | CanUpdateToWalletDescriptor (const WalletDescriptor &descriptor, std::string &error) |
| void | WriteDescriptor () |
| WalletDescriptor | GetWalletDescriptor () const EXCLUSIVE_LOCKS_REQUIRED(cs_desc_man) |
| std::unordered_set< CScript, SaltedSipHasher > | GetScriptPubKeys () const override |
| | Returns a set of all the scriptPubKeys that this ScriptPubKeyMan watches.
|
| std::unordered_set< CScript, SaltedSipHasher > | GetScriptPubKeys (int32_t minimum_index) const |
| int32_t | GetEndRange () const |
| bool | GetDescriptorString (std::string &out, bool priv) const |
| void | UpgradeDescriptorCache () |
| | ScriptPubKeyMan (WalletStorage &storage) |
| virtual | ~ScriptPubKeyMan ()=default |
| virtual void | KeepDestination (int64_t index, const OutputType &type) |
| template<typename... Params> |
| void | WalletLogPrintf (util::ConstevalFormatString< sizeof...(Params)> wallet_fmt, const Params &... params) const |
| | Prepends the wallet name in logging output to ease debugging in multi-wallet use cases.
|
|
| static std::unique_ptr< ExternalSignerScriptPubKeyMan > | LoadFromStorage (WalletStorage &storage, const uint256 &id, WalletDescriptor &descriptor, int64_t keypool_size, const KeyMap &keys, const CryptedKeyMap &ckeys) |
| static std::unique_ptr< ExternalSignerScriptPubKeyMan > | CreateNew (WalletStorage &storage, WalletBatch &batch, int64_t keypool_size, std::unique_ptr< Descriptor > desc) |
| static util::Result< ExternalSigner > | GetExternalSigner () |
| static std::unique_ptr< DescriptorScriptPubKeyMan > | LoadFromStorage (WalletStorage &storage, const uint256 &id, WalletDescriptor &descriptor, int64_t keypool_size, const KeyMap &keys, const CryptedKeyMap &ckeys) |
| static std::unique_ptr< DescriptorScriptPubKeyMan > | CreateFromImport (WalletStorage &storage, WalletDescriptor &descriptor, int64_t keypool_size, const FlatSigningProvider &provider) |
| static std::unique_ptr< DescriptorScriptPubKeyMan > | CreateFromMigration (WalletStorage &storage, WalletBatch &batch, WalletDescriptor &descriptor, int64_t keypool_size, const FlatSigningProvider &provider) |
| static std::unique_ptr< DescriptorScriptPubKeyMan > | GenerateNewSingleSig (WalletStorage &storage, WalletBatch &batch, int64_t keypool_size, const CExtKey &master_key, OutputType addr_type, bool internal) |
|
| RecursiveMutex | cs_desc_man |
| btcsignals::signal< void()> | NotifyCanGetAddressesChanged |
| | Keypool has new keys.
|
| btcsignals::signal< void(const ScriptPubKeyMan *spkm, int64_t new_birth_time)> | NotifyFirstKeyTimeChanged |
| | Birth time changed.
|
| | DescriptorScriptPubKeyMan (WalletStorage &storage, const uint256 &id, WalletDescriptor &descriptor, int64_t keypool_size, const KeyMap &keys, const CryptedKeyMap &ckeys) |
| | Create a DescriptorScriptPubKeyMan from existing data (i.e. during loading).
|
| | DescriptorScriptPubKeyMan (WalletStorage &storage, WalletDescriptor &descriptor, int64_t keypool_size) |
| | Create a new DescriptorScriptPubKeyMan from a descriptor (e.g. from an import, newly generated).
|
| WalletDescriptor m_wallet_descriptor | GUARDED_BY (cs_desc_man) |
| void | IncIndex () EXCLUSIVE_LOCKS_REQUIRED(cs_desc_man) |
| void | DecIndex () EXCLUSIVE_LOCKS_REQUIRED(cs_desc_man) |
| void | SetRangeEnd (int32_t end) EXCLUSIVE_LOCKS_REQUIRED(cs_desc_man) |
| bool | TopUpWithDB (WalletBatch &batch, unsigned int size=0) |
| | Same as 'TopUp' but designed for use within a batch transaction context.
|
| WalletStorage & | m_storage |