Fabcoin Core
0.16.2
P2P Digital Currency
|
Classes | |
struct | CompareValueOnly |
class | CAffectedKeysVisitor |
Functions | |
std::string | COutput::ToString () const |
const CWalletTx * | CWallet::GetWalletTx (const uint256 &hash) const |
CPubKey | CWallet::GenerateNewKey (CWalletDB &walletdb, bool internal=false) |
keystore implementation Generate a new key More... | |
void | CWallet::DeriveNewChildKey (CWalletDB &walletdb, CKeyMetadata &metadata, CKey &secret, bool internal=false) |
bool | CWallet::AddKeyPubKeyWithDB (CWalletDB &walletdb, const CKey &key, const CPubKey &pubkey) |
bool | CWallet::AddKeyPubKey (const CKey &key, const CPubKey &pubkey) override |
Adds a key to the store, and saves it to disk. More... | |
bool | CWallet::AddCryptedKey (const CPubKey &vchPubKey, const std::vector< unsigned char > &vchCryptedSecret) override |
Adds an encrypted key to the store, and saves it to disk. More... | |
bool | CWallet::LoadKeyMetadata (const CTxDestination &pubKey, const CKeyMetadata &metadata) |
Load metadata (used by LoadWallet) More... | |
bool | CWallet::LoadCryptedKey (const CPubKey &vchPubKey, const std::vector< unsigned char > &vchCryptedSecret) |
Adds an encrypted key to the store, without saving it to disk (used by LoadWallet) More... | |
void | CWallet::UpdateTimeFirstKey (int64_t nCreateTime) |
Update wallet first key creation time. More... | |
bool | CWallet::AddCScript (const CScript &redeemScript) override |
Support for BIP 0013 : see https://github.com/fabcoin/bips/blob/master/bip-0013.mediawiki. More... | |
bool | CWallet::LoadCScript (const CScript &redeemScript) |
bool | CWallet::AddWatchOnly (const CScript &dest) override |
Private version of AddWatchOnly method which does not accept a timestamp, and which will reset the wallet's nTimeFirstKey value to 1 if the watch key did not previously have a timestamp associated with it. More... | |
bool | CWallet::AddWatchOnly (const CScript &dest, int64_t nCreateTime) |
Adds a watch-only address to the store, and saves it to disk. More... | |
bool | CWallet::RemoveWatchOnly (const CScript &dest) override |
bool | CWallet::LoadWatchOnly (const CScript &dest) |
Adds a watch-only address to the store, without saving it to disk (used by LoadWallet) More... | |
bool | CWallet::Unlock (const SecureString &strWalletPassphrase) |
bool | CWallet::ChangeWalletPassphrase (const SecureString &strOldWalletPassphrase, const SecureString &strNewWalletPassphrase) |
void | CWallet::SetBestChain (const CBlockLocator &loc) override |
Notifies listeners of the new active block chain on-disk. More... | |
bool | CWallet::SetMinVersion (enum WalletFeature, CWalletDB *pwalletdbIn=nullptr, bool fExplicit=false) |
signify that a particular wallet feature is now used. this may change nWalletVersion and nWalletMaxVersion if those are lower More... | |
bool | CWallet::SetMaxVersion (int nVersion) |
change which version we're allowed to upgrade to (note that this does not immediately imply upgrading to that format) More... | |
std::set< uint256 > | CWallet::GetConflicts (const uint256 &txid) const |
Get wallet transactions that conflict with given transaction (spend same outputs) More... | |
bool | CWallet::HasWalletSpend (const uint256 &txid) const |
Check if a given transaction has any of its outputs spent by another transaction in the wallet. More... | |
void | CWallet::Flush (bool shutdown=false) |
Flush wallet (bitdb flush) More... | |
static bool | CWallet::Verify () |
Responsible for reading and validating the -wallet arguments and verifying the wallet database. More... | |
void | CWallet::SyncMetaData (std::pair< TxSpends::iterator, TxSpends::iterator >) |
bool | CWallet::IsSpent (const uint256 &hash, unsigned int n) const |
Outpoint is spent if any non-conflicted transaction spends it: More... | |
void | CWallet::AddToSpends (const COutPoint &outpoint, const uint256 &wtxid) |
void | CWallet::AddToSpends (const uint256 &wtxid) |
bool | CWallet::EncryptWallet (const SecureString &strWalletPassphrase) |
DBErrors | CWallet::ReorderTransactions () |
int64_t | CWallet::IncOrderPosNext (CWalletDB *pwalletdb=nullptr) |
Increment the next transaction order id. More... | |
bool | CWallet::AccountMove (std::string strFrom, std::string strTo, CAmount nAmount, std::string strComment="") |
bool | CWallet::GetAccountPubkey (CPubKey &pubKey, std::string strAccount, bool bForceNew=false) |
void | CWallet::MarkDirty () |
bool | CWallet::MarkReplaced (const uint256 &originalHash, const uint256 &newHash) |
Mark a transaction as replaced by another transaction (e.g., BIP 125). More... | |
bool | CWallet::AddToWallet (const CWalletTx &wtxIn, bool fFlushOnClose=true) |
bool | CWallet::LoadToWallet (const CWalletTx &wtxIn) |
bool | CWallet::AddToWalletIfInvolvingMe (const CTransactionRef &tx, const CBlockIndex *pIndex, int posInBlock, bool fUpdate) |
Add a transaction to the wallet, or update it. More... | |
bool | CWallet::TransactionCanBeAbandoned (const uint256 &hashTx) const |
Return whether transaction can be abandoned. More... | |
bool | CWallet::AbandonTransaction (const uint256 &hashTx) |
void | CWallet::MarkConflicted (const uint256 &hashBlock, const uint256 &hashTx) |
void | CWallet::SyncTransaction (const CTransactionRef &tx, const CBlockIndex *pindex=nullptr, int posInBlock=0) |
void | CWallet::TransactionAddedToMempool (const CTransactionRef &tx) override |
Notifies listeners of a transaction having been added to mempool. More... | |
void | CWallet::BlockConnected (const std::shared_ptr< const CBlock > &pblock, const CBlockIndex *pindex, const std::vector< CTransactionRef > &vtxConflicted) override |
Notifies listeners of a block being connected. More... | |
void | CWallet::BlockDisconnected (const std::shared_ptr< const CBlock > &pblock) override |
Notifies listeners of a block being disconnected. More... | |
isminetype | CWallet::IsMine (const CTxIn &txin) const |
CAmount | CWallet::GetDebit (const CTxIn &txin, const isminefilter &filter) const |
Returns amount of debit if the input matches the filter, otherwise returns 0. More... | |
isminetype | CWallet::IsMine (const CTxOut &txout) const |
CAmount | CWallet::GetCredit (const CTxOut &txout, const isminefilter &filter) const |
bool | CWallet::IsChange (const CTxOut &txout) const |
CAmount | CWallet::GetChange (const CTxOut &txout) const |
bool | CWallet::IsMine (const CTransaction &tx) const |
bool | CWallet::IsFromMe (const CTransaction &tx) const |
should probably be renamed to IsRelevantToMe More... | |
CAmount | CWallet::GetDebit (const CTransaction &tx, const isminefilter &filter) const |
bool | CWallet::IsAllFromMe (const CTransaction &tx, const isminefilter &filter) const |
Returns whether all of the inputs match the filter. More... | |
CAmount | CWallet::GetCredit (const CTransaction &tx, const isminefilter &filter) const |
CAmount | CWallet::GetChange (const CTransaction &tx) const |
CPubKey | CWallet::GenerateNewHDMasterKey () |
bool | CWallet::SetHDMasterKey (const CPubKey &key) |
bool | CWallet::SetHDChain (const CHDChain &chain, bool memonly) |
bool | CWallet::IsHDEnabled () const |
int64_t | CWalletTx::GetTxTime () const |
int | CWalletTx::GetRequestCount () const |
void | CWalletTx::GetAmounts (std::list< COutputEntry > &listReceived, std::list< COutputEntry > &listSent, CAmount &nFee, std::string &strSentAccount, const isminefilter &filter) const |
int64_t | CWallet::RescanFromTime (int64_t startTime, bool update) |
Scan active chain for relevant transactions after importing keys. More... | |
CBlockIndex * | CWallet::ScanForWalletTransactions (CBlockIndex *pindexStart, bool fUpdate=false) |
Scan the block chain (starting in pindexStart) for transactions from or to us. More... | |
void | CWallet::ReacceptWalletTransactions () |
bool | CWalletTx::RelayWalletTransaction (CConnman *connman) |
std::set< uint256 > | CWalletTx::GetConflicts () const |
CAmount | CWalletTx::GetDebit (const isminefilter &filter) const |
filter decides which addresses will count towards the debit More... | |
CAmount | CWalletTx::GetCredit (const isminefilter &filter) const |
CAmount | CWalletTx::GetImmatureCredit (bool fUseCache=true) const |
CAmount | CWalletTx::GetAvailableCredit (bool fUseCache=true) const |
CAmount | CWalletTx::GetImmatureWatchOnlyCredit (const bool &fUseCache=true) const |
CAmount | CWalletTx::GetAvailableWatchOnlyCredit (const bool &fUseCache=true) const |
CAmount | CWalletTx::GetChange () const |
bool | CWalletTx::InMempool () const |
bool | CWalletTx::IsTrusted () const |
bool | CWalletTx::IsEquivalentTo (const CWalletTx &tx) const |
std::vector< uint256 > | CWallet::ResendWalletTransactionsBefore (int64_t nTime, CConnman *connman) |
void | CWallet::ResendWalletTransactions (int64_t nBestBlockTime, CConnman *connman) override |
Tells listeners to broadcast their data. More... | |
Variables | |
bool | fWalletUnlockStakingOnly = false |
bool CWallet::AbandonTransaction | ( | const uint256 & | hashTx | ) |
Definition at line 1137 of file wallet.cpp.
bool CWallet::AccountMove | ( | std::string | strFrom, |
std::string | strTo, | ||
CAmount | nAmount, | ||
std::string | strComment = "" |
||
) |
Definition at line 843 of file wallet.cpp.
|
overridevirtual |
Adds an encrypted key to the store, and saves it to disk.
Reimplemented from CCryptoKeyStore.
Definition at line 271 of file wallet.cpp.
|
overridevirtual |
Support for BIP 0013 : see https://github.com/fabcoin/bips/blob/master/bip-0013.mediawiki.
Reimplemented from CBasicKeyStore.
Definition at line 318 of file wallet.cpp.
Adds a key to the store, and saves it to disk.
Reimplemented from CCryptoKeyStore.
Definition at line 265 of file wallet.cpp.
Definition at line 229 of file wallet.cpp.
Definition at line 642 of file wallet.cpp.
|
private |
bool CWallet::AddToWallet | ( | const CWalletTx & | wtxIn, |
bool | fFlushOnClose = true |
||
) |
Definition at line 953 of file wallet.cpp.
bool CWallet::AddToWalletIfInvolvingMe | ( | const CTransactionRef & | ptx, |
const CBlockIndex * | pIndex, | ||
int | posInBlock, | ||
bool | fUpdate | ||
) |
Add a transaction to the wallet, or update it.
pIndex and posInBlock should be set when the transaction was known to be included in a block. When pIndex == nullptr, 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 posInBlock signals or by checking mempool presence when necessary.
Definition at line 1071 of file wallet.cpp.
|
overrideprivatevirtual |
Private version of AddWatchOnly method which does not accept a timestamp, and which will reset the wallet's nTimeFirstKey value to 1 if the watch key did not previously have a timestamp associated with it.
Because this is an inherited virtual method, it is accessible despite being marked private, but it is marked private anyway to encourage use of the other AddWatchOnly which accepts a timestamp and sets nTimeFirstKey more intelligently for more efficient rescans.
Reimplemented from CBasicKeyStore.
Definition at line 346 of file wallet.cpp.
bool CWallet::AddWatchOnly | ( | const CScript & | dest, |
int64_t | nCreateTime | ||
) |
Adds a watch-only address to the store, and saves it to disk.
Definition at line 356 of file wallet.cpp.
|
overridevirtual |
Notifies listeners of a block being connected.
Provides a vector of transactions evicted from the mempool as a result.
Reimplemented from CValidationInterface.
Definition at line 1274 of file wallet.cpp.
|
overridevirtual |
Notifies listeners of a block being disconnected.
Reimplemented from CValidationInterface.
Definition at line 1292 of file wallet.cpp.
bool CWallet::ChangeWalletPassphrase | ( | const SecureString & | strOldWalletPassphrase, |
const SecureString & | strNewWalletPassphrase | ||
) |
Definition at line 400 of file wallet.cpp.
|
private |
bool CWallet::EncryptWallet | ( | const SecureString & | strWalletPassphrase | ) |
Definition at line 663 of file wallet.cpp.
void CWallet::Flush | ( | bool | shutdown = false | ) |
Flush wallet (bitdb flush)
Definition at line 520 of file wallet.cpp.
CPubKey CWallet::GenerateNewHDMasterKey | ( | ) |
Definition at line 1446 of file wallet.cpp.
keystore implementation Generate a new key
Definition at line 148 of file wallet.cpp.
bool CWallet::GetAccountPubkey | ( | CPubKey & | pubKey, |
std::string | strAccount, | ||
bool | bForceNew = false |
||
) |
Definition at line 877 of file wallet.cpp.
void CWalletTx::GetAmounts | ( | std::list< COutputEntry > & | listReceived, |
std::list< COutputEntry > & | listSent, | ||
CAmount & | nFee, | ||
std::string & | strSentAccount, | ||
const isminefilter & | filter | ||
) | const |
Definition at line 1550 of file wallet.cpp.
CAmount CWalletTx::GetAvailableCredit | ( | bool | fUseCache = true | ) | const |
Definition at line 1832 of file wallet.cpp.
CAmount CWalletTx::GetAvailableWatchOnlyCredit | ( | const bool & | fUseCache = true | ) | const |
Definition at line 1876 of file wallet.cpp.
CAmount CWalletTx::GetChange | ( | ) | const |
CAmount CWallet::GetChange | ( | const CTransaction & | tx | ) | const |
std::set< uint256 > CWalletTx::GetConflicts | ( | ) | const |
Get wallet transactions that conflict with given transaction (spend same outputs)
Definition at line 490 of file wallet.cpp.
CAmount CWalletTx::GetCredit | ( | const isminefilter & | filter | ) | const |
CAmount CWallet::GetCredit | ( | const CTxOut & | txout, |
const isminefilter & | filter | ||
) | const |
Definition at line 1340 of file wallet.cpp.
CAmount CWallet::GetCredit | ( | const CTransaction & | tx, |
const isminefilter & | filter | ||
) | const |
CAmount CWalletTx::GetDebit | ( | const isminefilter & | filter | ) | const |
filter decides which addresses will count towards the debit
Definition at line 1754 of file wallet.cpp.
CAmount 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 1319 of file wallet.cpp.
CAmount CWallet::GetDebit | ( | const CTransaction & | tx, |
const isminefilter & | filter | ||
) | const |
CAmount CWalletTx::GetImmatureCredit | ( | bool | fUseCache = true | ) | const |
CAmount CWalletTx::GetImmatureWatchOnlyCredit | ( | const bool & | fUseCache = true | ) | const |
int CWalletTx::GetRequestCount | ( | ) | const |
int64_t CWalletTx::GetTxTime | ( | ) | const |
bool CWallet::HasWalletSpend | ( | const uint256 & | txid | ) | const |
Check if a given transaction has any of its outputs spent by another transaction in the wallet.
Definition at line 513 of file wallet.cpp.
Increment the next transaction order id.
Definition at line 831 of file wallet.cpp.
bool CWalletTx::InMempool | ( | ) | const |
Definition at line 1914 of file wallet.cpp.
bool CWallet::IsAllFromMe | ( | const CTransaction & | tx, |
const isminefilter & | filter | ||
) | const |
Returns whether all of the inputs match the filter.
Definition at line 1401 of file wallet.cpp.
bool CWallet::IsChange | ( | const CTxOut & | txout | ) | const |
Definition at line 1347 of file wallet.cpp.
bool CWalletTx::IsEquivalentTo | ( | const CWalletTx & | tx | ) | const |
bool CWallet::IsFromMe | ( | const CTransaction & | tx | ) | const |
should probably be renamed to IsRelevantToMe
Definition at line 1384 of file wallet.cpp.
bool CWallet::IsHDEnabled | ( | ) | const |
isminetype CWallet::IsMine | ( | const CTxIn & | txin | ) | const |
Definition at line 1302 of file wallet.cpp.
isminetype CWallet::IsMine | ( | const CTxOut & | txout | ) | const |
bool CWallet::IsMine | ( | const CTransaction & | tx | ) | const |
bool CWallet::IsSpent | ( | const uint256 & | hash, |
unsigned int | n | ||
) | const |
Outpoint is spent if any non-conflicted transaction spends it:
Definition at line 623 of file wallet.cpp.
bool CWalletTx::IsTrusted | ( | ) | const |
Definition at line 1920 of file wallet.cpp.
bool CWallet::LoadCryptedKey | ( | const CPubKey & | vchPubKey, |
const std::vector< unsigned char > & | vchCryptedSecret | ||
) |
Adds an encrypted key to the store, without saving it to disk (used by LoadWallet)
Definition at line 297 of file wallet.cpp.
bool CWallet::LoadCScript | ( | const CScript & | redeemScript | ) |
Definition at line 330 of file wallet.cpp.
bool CWallet::LoadKeyMetadata | ( | const CTxDestination & | pubKey, |
const CKeyMetadata & | metadata | ||
) |
Load metadata (used by LoadWallet)
Definition at line 289 of file wallet.cpp.
bool CWallet::LoadToWallet | ( | const CWalletTx & | wtxIn | ) |
Definition at line 1037 of file wallet.cpp.
bool CWallet::LoadWatchOnly | ( | const CScript & | dest | ) |
Adds a watch-only address to the store, without saving it to disk (used by LoadWallet)
Definition at line 375 of file wallet.cpp.
void CWallet::MarkDirty | ( | ) |
Mark a transaction as replaced by another transaction (e.g., BIP 125).
Definition at line 924 of file wallet.cpp.
void CWallet::ReacceptWalletTransactions | ( | ) |
Definition at line 1687 of file wallet.cpp.
bool CWalletTx::RelayWalletTransaction | ( | CConnman * | connman | ) |
Definition at line 1720 of file wallet.cpp.
|
overridevirtual |
Reimplemented from CBasicKeyStore.
Definition at line 362 of file wallet.cpp.
DBErrors CWallet::ReorderTransactions | ( | ) |
Definition at line 754 of file wallet.cpp.
int64_t CWallet::RescanFromTime | ( | int64_t | startTime, |
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.
Definition at line 1614 of file wallet.cpp.
|
overridevirtual |
Tells listeners to broadcast their data.
Reimplemented from CValidationInterface.
Definition at line 1985 of file wallet.cpp.
std::vector< uint256 > CWallet::ResendWalletTransactionsBefore | ( | int64_t | nTime, |
CConnman * | connman | ||
) |
Definition at line 1960 of file wallet.cpp.
CBlockIndex * CWallet::ScanForWalletTransactions | ( | CBlockIndex * | pindexStart, |
bool | fUpdate = false |
||
) |
Scan the block chain (starting in pindexStart) for transactions from or to us.
If fUpdate is true, found transactions that already exist in the wallet will be updated.
Returns null if scan was successful. Otherwise, if a complete rescan was not possible (due to pruning or corruption), returns pointer to the most recent block that could not be scanned.
Definition at line 1643 of file wallet.cpp.
|
overridevirtual |
Notifies listeners of the new active block chain on-disk.
Reimplemented from CValidationInterface.
Definition at line 446 of file wallet.cpp.
bool CWallet::SetHDChain | ( | const CHDChain & | chain, |
bool | memonly | ||
) |
Definition at line 1490 of file wallet.cpp.
bool CWallet::SetHDMasterKey | ( | const CPubKey & | key | ) |
Definition at line 1476 of file wallet.cpp.
bool CWallet::SetMaxVersion | ( | int | nVersion | ) |
change which version we're allowed to upgrade to (note that this does not immediately imply upgrading to that format)
Definition at line 478 of file wallet.cpp.
bool CWallet::SetMinVersion | ( | enum WalletFeature | nVersion, |
CWalletDB * | pwalletdbIn = nullptr , |
||
bool | fExplicit = false |
||
) |
signify that a particular wallet feature is now used. this may change nWalletVersion and nWalletMaxVersion if those are lower
Definition at line 452 of file wallet.cpp.
|
private |
|
private |
Definition at line 1253 of file wallet.cpp.
std::string COutput::ToString | ( | ) | const |
|
overridevirtual |
Notifies listeners of a transaction having been added to mempool.
Reimplemented from CValidationInterface.
Definition at line 1269 of file wallet.cpp.
bool CWallet::TransactionCanBeAbandoned | ( | const uint256 & | hashTx | ) | const |
Return whether transaction can be abandoned.
Definition at line 1130 of file wallet.cpp.
bool CWallet::Unlock | ( | const SecureString & | strWalletPassphrase | ) |
Definition at line 380 of file wallet.cpp.
void CWallet::UpdateTimeFirstKey | ( | int64_t | nCreateTime | ) |
Update wallet first key creation time.
This should be called whenever keys are added to the wallet, with the oldest key creation time.
Definition at line 306 of file wallet.cpp.
|
static |
Responsible for reading and validating the -wallet arguments and verifying the wallet database.
Definition at line 525 of file wallet.cpp.
bool fWalletUnlockStakingOnly = false |
Definition at line 328 of file wallet.cpp.