Bitcoin Core 28.99.0
P2P Digital Currency
Functions
MapWallet

Functions

const CWalletTxwallet::CWallet::GetWalletTx (const uint256 &hash) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void wallet::CWallet::UpgradeKeyMetadata () EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Upgrade stored CKeyMetadata objects to store key origin info as KeyOriginInfo. More...
 
void wallet::CWallet::UpgradeDescriptorCache () EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Upgrade DescriptorCaches. More...
 
bool wallet::CWallet::Unlock (const SecureString &strWalletPassphrase)
 
bool wallet::CWallet::ChangeWalletPassphrase (const SecureString &strOldWalletPassphrase, const SecureString &strNewWalletPassphrase)
 
void wallet::CWallet::chainStateFlushed (ChainstateRole role, const CBlockLocator &loc) override
 
void wallet::CWallet::SetMinVersion (enum WalletFeature, WalletBatch *batch_in=nullptr) override
 signify that a particular wallet feature is now used. More...
 
std::set< uint256wallet::CWallet::GetConflicts (const uint256 &txid) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Get wallet transactions that conflict with given transaction (spend same outputs) More...
 
bool wallet::CWallet::HasWalletSpend (const CTransactionRef &tx) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Check if a given transaction has any of its outputs spent by another transaction in the wallet. More...
 
void wallet::CWallet::Flush ()
 Flush wallet (bitdb flush) More...
 
void wallet::CWallet::Close ()
 Close wallet database. More...
 
void wallet::CWallet::SyncMetaData (std::pair< TxSpends::iterator, TxSpends::iterator >) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::IsSpent (const COutPoint &outpoint) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Outpoint is spent if any non-conflicted transaction spends it: More...
 
void wallet::CWallet::AddToSpends (const COutPoint &outpoint, const uint256 &wtxid, WalletBatch *batch=nullptr) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void wallet::CWallet::AddToSpends (const CWalletTx &wtx, WalletBatch *batch=nullptr) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::EncryptWallet (const SecureString &strWalletPassphrase)
 
DBErrors wallet::CWallet::ReorderTransactions ()
 
int64_t wallet::CWallet::IncOrderPosNext (WalletBatch *batch=nullptr) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Increment the next transaction order id. More...
 
void wallet::CWallet::MarkDirty ()
 
bool wallet::CWallet::MarkReplaced (const uint256 &originalHash, const uint256 &newHash)
 Mark a transaction as replaced by another transaction. More...
 
void wallet::CWallet::SetSpentKeyState (WalletBatch &batch, const uint256 &hash, unsigned int n, bool used, std::set< CTxDestination > &tx_destinations) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::IsSpentKey (const CScript &scriptPubKey) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
CWalletTxwallet::CWallet::AddToWallet (CTransactionRef tx, const TxState &state, const UpdateWalletTxFn &update_wtx=nullptr, bool fFlushOnClose=true, bool rescanning_old_block=false)
 Add the transaction to the wallet, wrapping it up inside a CWalletTx. More...
 
bool wallet::CWallet::LoadToWallet (const uint256 &hash, const UpdateWalletTxFn &fill_wtx) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::AddToWalletIfInvolvingMe (const CTransactionRef &tx, const SyncTxState &state, bool fUpdate, bool rescanning_old_block) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Add a transaction to the wallet, or update it. More...
 
bool wallet::CWallet::TransactionCanBeAbandoned (const uint256 &hashTx) const
 Return whether transaction can be abandoned. More...
 
void wallet::CWallet::MarkInputsDirty (const CTransactionRef &tx) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Mark a transaction's inputs dirty, thus forcing the outputs to be recomputed. More...
 
bool wallet::CWallet::AbandonTransaction (const uint256 &hashTx)
 
void wallet::CWallet::MarkConflicted (const uint256 &hashBlock, int conflicting_height, const uint256 &hashTx)
 Mark a transaction (and its in-wallet descendants) as conflicting with a particular block. More...
 
void wallet::CWallet::RecursiveUpdateTxState (const uint256 &tx_hash, const TryUpdatingStateFn &try_updating_state) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Mark a transaction (and its in-wallet descendants) as a particular tx state. More...
 
void wallet::CWallet::RecursiveUpdateTxState (WalletBatch *batch, const uint256 &tx_hash, const TryUpdatingStateFn &try_updating_state) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void wallet::CWallet::SyncTransaction (const CTransactionRef &tx, const SyncTxState &state, bool update_tx=true, bool rescanning_old_block=false) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void wallet::CWallet::transactionAddedToMempool (const CTransactionRef &tx) override
 
void wallet::CWallet::transactionRemovedFromMempool (const CTransactionRef &tx, MemPoolRemovalReason reason) override
 
void wallet::CWallet::blockConnected (ChainstateRole role, const interfaces::BlockInfo &block) override
 
void wallet::CWallet::blockDisconnected (const interfaces::BlockInfo &block) override
 
void wallet::CWallet::updatedBlockTip () override
 
CAmount wallet::CWallet::GetDebit (const CTxIn &txin, const isminefilter &filter) const
 Returns amount of debit if the input matches the filter, otherwise returns 0. More...
 
isminetype wallet::CWallet::IsMine (const CTxOut &txout) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
isminetype wallet::CWallet::IsMine (const CTxDestination &dest) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
isminetype wallet::CWallet::IsMine (const CScript &script) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::IsMine (const CTransaction &tx) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
isminetype wallet::CWallet::IsMine (const COutPoint &outpoint) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::IsFromMe (const CTransaction &tx) const
 should probably be renamed to IsRelevantToMe More...
 
CAmount wallet::CWallet::GetDebit (const CTransaction &tx, const isminefilter &filter) const
 
bool wallet::CWallet::IsHDEnabled () const
 
bool wallet::CWallet::CanGetAddresses (bool internal=false) const
 
void BlockUntilSyncedToCurrentChain() const LOCKS_EXCLUDED(void wallet::CWallet::SetWalletFlag (uint64_t flags)
 Blocks until the wallet state is up-to-date to /at least/ the current chain at the time this function is entered Obviously holding cs_main/cs_wallet when going into this call may cause deadlock. More...
 
void wallet::CWallet::SetWalletFlagWithDB (WalletBatch &batch, uint64_t flags)
 Store wallet flags. More...
 
void wallet::CWallet::UnsetWalletFlag (uint64_t flag)
 Unsets a single wallet flag. More...
 
void wallet::CWallet::UnsetWalletFlagWithDB (WalletBatch &batch, uint64_t flag)
 Unsets a wallet flag and saves it to disk. More...
 
void wallet::CWallet::UnsetBlankWalletFlag (WalletBatch &batch) override
 Unset the blank wallet flag and saves it to disk. More...
 
bool wallet::CWallet::IsWalletFlagSet (uint64_t flag) const override
 check if a certain wallet flag is set More...
 
bool wallet::CWallet::LoadWalletFlags (uint64_t flags)
 Loads the flags into the wallet. More...
 
void wallet::CWallet::InitWalletFlags (uint64_t flags)
 overwrite all flags by the given uint64_t flags must be uninitialised (or 0) only known flags may be present More...
 
bool wallet::CWallet::ImportScripts (const std::set< CScript > scripts, int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::ImportPrivKeys (const std::map< CKeyID, CKey > &privkey_map, const int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::ImportPubKeys (const std::vector< std::pair< CKeyID, bool > > &ordered_pubkeys, const std::map< CKeyID, CPubKey > &pubkey_map, const std::map< CKeyID, std::pair< CPubKey, KeyOriginInfo > > &key_origins, const bool add_keypool, const int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::ImportScriptPubKeys (const std::string &label, const std::set< CScript > &script_pub_keys, const bool have_solving_data, const bool apply_label, const int64_t timestamp) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
void wallet::CWallet::MaybeUpdateBirthTime (int64_t time)
 Updates wallet birth time if 'time' is below it. More...
 
int64_t wallet::CWallet::RescanFromTime (int64_t startTime, const WalletRescanReserver &reserver, bool update)
 Scan active chain for relevant transactions after importing keys. More...
 
ScanResult wallet::CWallet::ScanForWalletTransactions (const uint256 &start_block, int start_height, std::optional< int > max_height, const WalletRescanReserver &reserver, bool fUpdate, const bool save_progress)
 Scan the block chain (starting in start_block) for transactions from or to us. More...
 
bool wallet::CWallet::SubmitTxMemoryPoolAndRelay (CWalletTx &wtx, std::string &err_string, bool relay) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 Pass this transaction to node for mempool insertion and relay to peers if flag set to true. More...
 
std::set< uint256wallet::CWallet::GetTxConflicts (const CWalletTx &wtx) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet)
 
bool wallet::CWallet::ShouldResend () const
 Return true if all conditions for periodically resending transactions are met. More...
 
static NodeClock::time_point wallet::CWallet::GetDefaultNextResend ()
 
void wallet::CWallet::ResubmitWalletTransactions (bool relay, bool force)
 

Detailed Description

Function Documentation

◆ AbandonTransaction()

bool wallet::CWallet::AbandonTransaction ( const uint256 hashTx)

Definition at line 1309 of file wallet.cpp.

Here is the call graph for this function:

◆ AddToSpends() [1/2]

void wallet::CWallet::AddToSpends ( const COutPoint outpoint,
const uint256 wtxid,
WalletBatch batch = nullptr 
)
private

Definition at line 778 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddToSpends() [2/2]

void wallet::CWallet::AddToSpends ( const CWalletTx wtx,
WalletBatch batch = nullptr 
)
private

Definition at line 795 of file wallet.cpp.

Here is the call graph for this function:

◆ AddToWallet()

CWalletTx * wallet::CWallet::AddToWallet ( CTransactionRef  tx,
const TxState state,
const UpdateWalletTxFn update_wtx = nullptr,
bool  fFlushOnClose = true,
bool  rescanning_old_block = false 
)

Add the transaction to the wallet, wrapping it up inside a CWalletTx.

Returns
the recently added wtx pointer or nullptr if there was a db write error.

Definition at line 1066 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddToWalletIfInvolvingMe()

bool wallet::CWallet::AddToWalletIfInvolvingMe ( const CTransactionRef tx,
const SyncTxState state,
bool  fUpdate,
bool  rescanning_old_block 
)
private

Add a transaction to the wallet, or update it.

confirm.block_* should be set when the transaction was known to be included in a block. When block_hash.IsNull(), then wallet state is not updated in AddToWallet, but notifications happen and cached balances are marked dirty.

If fUpdate is true, existing transactions will be updated. TODO: One exception to this is that the abandoned state is cleared under the assumption that any further notification of a transaction that was considered abandoned is an indication that it is not safe to be considered abandoned. Abandoned state should probably be more carefully tracked via different chain notifications or by checking mempool presence when necessary.

Should be called with rescanning_old_block set to true, if the transaction is not discovered in real time, but during a rescan of old blocks.

Definition at line 1226 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ blockConnected()

void wallet::CWallet::blockConnected ( ChainstateRole  role,
const interfaces::BlockInfo block 
)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

Definition at line 1506 of file wallet.cpp.

Here is the call graph for this function:

◆ blockDisconnected()

void wallet::CWallet::blockDisconnected ( const interfaces::BlockInfo block)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

Definition at line 1528 of file wallet.cpp.

Here is the call graph for this function:

◆ CanGetAddresses()

bool wallet::CWallet::CanGetAddresses ( bool  internal = false) const

Definition at line 1690 of file wallet.cpp.

Here is the call graph for this function:

◆ chainStateFlushed()

void wallet::CWallet::chainStateFlushed ( ChainstateRole  role,
const CBlockLocator loc 
)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

Definition at line 645 of file wallet.cpp.

Here is the call graph for this function:

◆ ChangeWalletPassphrase()

bool wallet::CWallet::ChangeWalletPassphrase ( const SecureString strOldWalletPassphrase,
const SecureString strNewWalletPassphrase 
)

Definition at line 598 of file wallet.cpp.

Here is the call graph for this function:

◆ Close()

void wallet::CWallet::Close ( )

Close wallet database.

Definition at line 713 of file wallet.cpp.

Here is the call graph for this function:

◆ EncryptWallet()

bool wallet::CWallet::EncryptWallet ( const SecureString strWalletPassphrase)

Definition at line 804 of file wallet.cpp.

Here is the call graph for this function:

◆ Flush()

void wallet::CWallet::Flush ( )

Flush wallet (bitdb flush)

Definition at line 708 of file wallet.cpp.

Here is the call graph for this function:

◆ GetConflicts()

std::set< uint256 > wallet::CWallet::GetConflicts ( const uint256 txid) const

Get wallet transactions that conflict with given transaction (spend same outputs)

Definition at line 673 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetDebit() [1/2]

CAmount wallet::CWallet::GetDebit ( const CTransaction tx,
const isminefilter filter 
) const

Definition at line 1667 of file wallet.cpp.

Here is the call graph for this function:

◆ GetDebit() [2/2]

CAmount wallet::CWallet::GetDebit ( const CTxIn txin,
const isminefilter filter 
) const

Returns amount of debit if the input matches the filter, otherwise returns 0.

Definition at line 1589 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetDefaultNextResend()

NodeClock::time_point wallet::CWallet::GetDefaultNextResend ( )
staticprivate

Definition at line 2082 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTxConflicts()

std::set< uint256 > wallet::CWallet::GetTxConflicts ( const CWalletTx wtx) const

Definition at line 2055 of file wallet.cpp.

Here is the call graph for this function:

◆ GetWalletTx()

const CWalletTx * wallet::CWallet::GetWalletTx ( const uint256 hash) const

Definition at line 536 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasWalletSpend()

bool wallet::CWallet::HasWalletSpend ( const CTransactionRef tx) const

Check if a given transaction has any of its outputs spent by another transaction in the wallet.

Definition at line 696 of file wallet.cpp.

Here is the call graph for this function:

◆ ImportPrivKeys()

bool wallet::CWallet::ImportPrivKeys ( const std::map< CKeyID, CKey > &  privkey_map,
const int64_t  timestamp 
)

Definition at line 1779 of file wallet.cpp.

Here is the call graph for this function:

◆ ImportPubKeys()

bool wallet::CWallet::ImportPubKeys ( const std::vector< std::pair< CKeyID, bool > > &  ordered_pubkeys,
const std::map< CKeyID, CPubKey > &  pubkey_map,
const std::map< CKeyID, std::pair< CPubKey, KeyOriginInfo > > &  key_origins,
const bool  add_keypool,
const int64_t  timestamp 
)

Definition at line 1789 of file wallet.cpp.

Here is the call graph for this function:

◆ ImportScriptPubKeys()

bool wallet::CWallet::ImportScriptPubKeys ( const std::string &  label,
const std::set< CScript > &  script_pub_keys,
const bool  have_solving_data,
const bool  apply_label,
const int64_t  timestamp 
)

Definition at line 1799 of file wallet.cpp.

Here is the call graph for this function:

◆ ImportScripts()

bool wallet::CWallet::ImportScripts ( const std::set< CScript scripts,
int64_t  timestamp 
)

Definition at line 1769 of file wallet.cpp.

Here is the call graph for this function:

◆ IncOrderPosNext()

int64_t wallet::CWallet::IncOrderPosNext ( WalletBatch batch = nullptr)

Increment the next transaction order id.

Returns
next transaction order id

Definition at line 964 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InitWalletFlags()

void wallet::CWallet::InitWalletFlags ( uint64_t  flags)

overwrite all flags by the given uint64_t flags must be uninitialised (or 0) only known flags may be present

Definition at line 1753 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsFromMe()

bool wallet::CWallet::IsFromMe ( const CTransaction tx) const

should probably be renamed to IsRelevantToMe

Definition at line 1662 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsHDEnabled()

bool wallet::CWallet::IsHDEnabled ( ) const

Definition at line 1679 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsMine() [1/5]

isminetype wallet::CWallet::IsMine ( const COutPoint outpoint) const

Definition at line 1649 of file wallet.cpp.

Here is the call graph for this function:

◆ IsMine() [2/5]

isminetype wallet::CWallet::IsMine ( const CScript script) const

Definition at line 1617 of file wallet.cpp.

Here is the call graph for this function:

◆ IsMine() [3/5]

bool wallet::CWallet::IsMine ( const CTransaction tx) const

Definition at line 1640 of file wallet.cpp.

Here is the call graph for this function:

◆ IsMine() [4/5]

isminetype wallet::CWallet::IsMine ( const CTxDestination dest) const

Definition at line 1611 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsMine() [5/5]

isminetype wallet::CWallet::IsMine ( const CTxOut txout) const

Definition at line 1605 of file wallet.cpp.

Here is the call graph for this function:

◆ IsSpent()

bool wallet::CWallet::IsSpent ( const COutPoint outpoint) const

Outpoint is spent if any non-conflicted transaction spends it:

Definition at line 761 of file wallet.cpp.

Here is the caller graph for this function:

◆ IsSpentKey()

bool wallet::CWallet::IsSpentKey ( const CScript scriptPubKey) const

Definition at line 1036 of file wallet.cpp.

Here is the call graph for this function:

◆ IsWalletFlagSet()

bool wallet::CWallet::IsWalletFlagSet ( uint64_t  flag) const
overridevirtual

check if a certain wallet flag is set

Implements wallet::WalletStorage.

Definition at line 1736 of file wallet.cpp.

Here is the caller graph for this function:

◆ LoadToWallet()

bool wallet::CWallet::LoadToWallet ( const uint256 hash,
const UpdateWalletTxFn fill_wtx 
)

Definition at line 1194 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LoadWalletFlags()

bool wallet::CWallet::LoadWalletFlags ( uint64_t  flags)

Loads the flags into the wallet.

(used by LoadWallet)

Definition at line 1741 of file wallet.cpp.

Here is the caller graph for this function:

◆ MarkConflicted()

void wallet::CWallet::MarkConflicted ( const uint256 hashBlock,
int  conflicting_height,
const uint256 hashTx 
)
private

Mark a transaction (and its in-wallet descendants) as conflicting with a particular block.

Definition at line 1344 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MarkDirty()

void wallet::CWallet::MarkDirty ( )

Definition at line 976 of file wallet.cpp.

Here is the caller graph for this function:

◆ MarkInputsDirty()

void wallet::CWallet::MarkInputsDirty ( const CTransactionRef tx)
private

Mark a transaction's inputs dirty, thus forcing the outputs to be recomputed.

Definition at line 1299 of file wallet.cpp.

Here is the caller graph for this function:

◆ MarkReplaced()

bool wallet::CWallet::MarkReplaced ( const uint256 originalHash,
const uint256 newHash 
)

Mark a transaction as replaced by another transaction.

Definition at line 985 of file wallet.cpp.

Here is the call graph for this function:

◆ MaybeUpdateBirthTime()

void wallet::CWallet::MaybeUpdateBirthTime ( int64_t  time)

Updates wallet birth time if 'time' is below it.

Definition at line 1822 of file wallet.cpp.

Here is the caller graph for this function:

◆ RecursiveUpdateTxState() [1/2]

void wallet::CWallet::RecursiveUpdateTxState ( const uint256 tx_hash,
const TryUpdatingStateFn try_updating_state 
)
private

Mark a transaction (and its in-wallet descendants) as a particular tx state.

Definition at line 1374 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RecursiveUpdateTxState() [2/2]

void wallet::CWallet::RecursiveUpdateTxState ( WalletBatch batch,
const uint256 tx_hash,
const TryUpdatingStateFn try_updating_state 
)
private

Definition at line 1380 of file wallet.cpp.

Here is the call graph for this function:

◆ ReorderTransactions()

DBErrors wallet::CWallet::ReorderTransactions ( )

Definition at line 907 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ RescanFromTime()

int64_t wallet::CWallet::RescanFromTime ( int64_t  startTime,
const WalletRescanReserver reserver,
bool  update 
)

Scan active chain for relevant transactions after importing keys.

This should be called whenever new keys are added to the wallet, with the oldest key creation time.

Returns
Earliest timestamp that could be successfully scanned from. Timestamp returned will be higher than startTime if relevant blocks could not be read.

Definition at line 1838 of file wallet.cpp.

Here is the call graph for this function:

◆ ResubmitWalletTransactions()

void wallet::CWallet::ResubmitWalletTransactions ( bool  relay,
bool  force 
)

Definition at line 2108 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ScanForWalletTransactions()

CWallet::ScanResult wallet::CWallet::ScanForWalletTransactions ( const uint256 start_block,
int  start_height,
std::optional< int >  max_height,
const WalletRescanReserver reserver,
bool  fUpdate,
const bool  save_progress 
)

Scan the block chain (starting in start_block) for transactions from or to us.

If fUpdate is true, found transactions that already exist in the wallet will be updated. If max_height is not set, the mempool will be scanned as well.

Parameters
[in]start_blockScan starting block. If block is not on the active chain, the scan will return SUCCESS immediately.
[in]start_heightHeight of start_block
[in]max_heightOptional max scanning height. If unset there is no maximum and scanning can continue to the tip
Returns
ScanResult returning scan information and indicating success or failure. Return status will be set to SUCCESS if scan was successful. FAILURE if a complete rescan was not possible (due to pruning or corruption). USER_ABORT if the rescan was aborted before it could complete.
Precondition
Caller needs to make sure start_block (and the optional stop_block) are on the main chain after to the addition of any new keys you want to detect transactions for.

Definition at line 1882 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetMinVersion()

void wallet::CWallet::SetMinVersion ( enum WalletFeature  nVersion,
WalletBatch batch_in = nullptr 
)
overridevirtual

signify that a particular wallet feature is now used.

Implements wallet::WalletStorage.

Definition at line 656 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetSpentKeyState()

void wallet::CWallet::SetSpentKeyState ( WalletBatch batch,
const uint256 hash,
unsigned int  n,
bool  used,
std::set< CTxDestination > &  tx_destinations 
)

Definition at line 1017 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetWalletFlag()

void wallet::CWallet::SetWalletFlag ( uint64_t  flags)

Blocks until the wallet state is up-to-date to /at least/ the current chain at the time this function is entered Obviously holding cs_main/cs_wallet when going into this call may cause deadlock.

set a single wallet flag

Definition at line 1703 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetWalletFlagWithDB()

void wallet::CWallet::SetWalletFlagWithDB ( WalletBatch batch,
uint64_t  flags 
)
private

Store wallet flags.

Definition at line 1709 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShouldResend()

bool wallet::CWallet::ShouldResend ( ) const

Return true if all conditions for periodically resending transactions are met.

Definition at line 2065 of file wallet.cpp.

Here is the call graph for this function:

◆ SubmitTxMemoryPoolAndRelay()

bool wallet::CWallet::SubmitTxMemoryPoolAndRelay ( CWalletTx wtx,
std::string &  err_string,
bool  relay 
) const

Pass this transaction to node for mempool insertion and relay to peers if flag set to true.

Definition at line 2025 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SyncMetaData()

void wallet::CWallet::SyncMetaData ( std::pair< TxSpends::iterator, TxSpends::iterator >  range)
private

Definition at line 718 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SyncTransaction()

void wallet::CWallet::SyncTransaction ( const CTransactionRef tx,
const SyncTxState state,
bool  update_tx = true,
bool  rescanning_old_block = false 
)
private

Definition at line 1419 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ transactionAddedToMempool()

void wallet::CWallet::transactionAddedToMempool ( const CTransactionRef tx)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

Definition at line 1430 of file wallet.cpp.

Here is the call graph for this function:

◆ TransactionCanBeAbandoned()

bool wallet::CWallet::TransactionCanBeAbandoned ( const uint256 hashTx) const

Return whether transaction can be abandoned.

Definition at line 1292 of file wallet.cpp.

Here is the call graph for this function:

◆ transactionRemovedFromMempool()

void wallet::CWallet::transactionRemovedFromMempool ( const CTransactionRef tx,
MemPoolRemovalReason  reason 
)
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

Definition at line 1454 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Unlock()

bool wallet::CWallet::Unlock ( const SecureString strWalletPassphrase)

Definition at line 573 of file wallet.cpp.

Here is the call graph for this function:

◆ UnsetBlankWalletFlag()

void wallet::CWallet::UnsetBlankWalletFlag ( WalletBatch batch)
overrideprivatevirtual

Unset the blank wallet flag and saves it to disk.

Implements wallet::WalletStorage.

Definition at line 1731 of file wallet.cpp.

Here is the call graph for this function:

◆ UnsetWalletFlag()

void wallet::CWallet::UnsetWalletFlag ( uint64_t  flag)

Unsets a single wallet flag.

Definition at line 1717 of file wallet.cpp.

Here is the call graph for this function:

◆ UnsetWalletFlagWithDB()

void wallet::CWallet::UnsetWalletFlagWithDB ( WalletBatch batch,
uint64_t  flag 
)
private

Unsets a wallet flag and saves it to disk.

Definition at line 1723 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updatedBlockTip()

void wallet::CWallet::updatedBlockTip ( )
overridevirtual

Reimplemented from interfaces::Chain::Notifications.

Definition at line 1572 of file wallet.cpp.

Here is the call graph for this function:

◆ UpgradeDescriptorCache()

void wallet::CWallet::UpgradeDescriptorCache ( )

Upgrade DescriptorCaches.

Definition at line 560 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UpgradeKeyMetadata()

void wallet::CWallet::UpgradeKeyMetadata ( )

Upgrade stored CKeyMetadata objects to store key origin info as KeyOriginInfo.

Definition at line 545 of file wallet.cpp.

Here is the call graph for this function:
Here is the caller graph for this function: