Raven Core
3.0.0
P2P Digital Currency
|
Classes | |
struct | CompareValueOnly |
struct | CompareAssetValueOnly |
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/raven/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... | |
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... | |
CAmount | CWallet::GetDebit (const CTxIn &txin, const isminefilter &filter, CAssetOutputEntry &assetData) const |
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::GenerateNewSeed () |
CPubKey | CWallet::DeriveNewSeed (const CKey &key) |
bool | CWallet::SetHDSeed (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 |
void | CWalletTx::GetAmounts (std::list< COutputEntry > &listReceived, std::list< COutputEntry > &listSent, CAmount &nFee, std::string &strSentAccount, const isminefilter &filter, std::list< CAssetOutputEntry > &assetsReceived, std::list< CAssetOutputEntry > &assetsSent) 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, CBlockIndex *pindexStop, 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... | |
bool CWallet::AbandonTransaction | ( | const uint256 & | hashTx | ) |
Definition at line 1069 of file wallet.cpp.
bool CWallet::AccountMove | ( | std::string | strFrom, |
std::string | strTo, | ||
CAmount | nAmount, | ||
std::string | strComment = "" |
||
) |
|
overridevirtual |
Adds an encrypted key to the store, and saves it to disk.
Reimplemented from CCryptoKeyStore.
Definition at line 262 of file wallet.cpp.
|
overridevirtual |
Support for BIP 0013 : see https://github.com/raven/bips/blob/master/bip-0013.mediawiki.
Reimplemented from CBasicKeyStore.
Definition at line 309 of file wallet.cpp.
Adds a key to the store, and saves it to disk.
Reimplemented from CCryptoKeyStore.
Definition at line 256 of file wallet.cpp.
Definition at line 220 of file wallet.cpp.
Definition at line 572 of file wallet.cpp.
|
private |
Definition at line 582 of file wallet.cpp.
bool CWallet::AddToWallet | ( | const CWalletTx & | wtxIn, |
bool | fFlushOnClose = true |
||
) |
Definition at line 884 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 1003 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 332 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 342 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 1213 of file wallet.cpp.
|
overridevirtual |
Notifies listeners of a block being disconnected.
Reimplemented from CValidationInterface.
Definition at line 1231 of file wallet.cpp.
bool CWallet::ChangeWalletPassphrase | ( | const SecureString & | strOldWalletPassphrase, |
const SecureString & | strNewWalletPassphrase | ||
) |
Definition at line 386 of file wallet.cpp.
|
private |
bool CWallet::EncryptWallet | ( | const SecureString & | strWalletPassphrase | ) |
Definition at line 594 of file wallet.cpp.
void CWallet::Flush | ( | bool | shutdown = false | ) |
Flush wallet (bitdb flush)
Definition at line 506 of file wallet.cpp.
keystore implementation Generate a new key
Definition at line 139 of file wallet.cpp.
CPubKey CWallet::GenerateNewSeed | ( | ) |
bool CWallet::GetAccountPubkey | ( | CPubKey & | pubKey, |
std::string | strAccount, | ||
bool | bForceNew = false |
||
) |
Definition at line 808 of file wallet.cpp.
void CWalletTx::GetAmounts | ( | std::list< COutputEntry > & | listReceived, |
std::list< COutputEntry > & | listSent, | ||
CAmount & | nFee, | ||
std::string & | strSentAccount, | ||
const isminefilter & | filter | ||
) | const |
void CWalletTx::GetAmounts | ( | std::list< COutputEntry > & | listReceived, |
std::list< COutputEntry > & | listSent, | ||
CAmount & | nFee, | ||
std::string & | strSentAccount, | ||
const isminefilter & | filter, | ||
std::list< CAssetOutputEntry > & | assetsReceived, | ||
std::list< CAssetOutputEntry > & | assetsSent | ||
) | const |
RVN START
RVN END
Definition at line 1511 of file wallet.cpp.
CAmount CWalletTx::GetAvailableCredit | ( | bool | fUseCache = true | ) | const |
Definition at line 1823 of file wallet.cpp.
CAmount CWalletTx::GetAvailableWatchOnlyCredit | ( | const bool & | fUseCache = true | ) | const |
Definition at line 1867 of file wallet.cpp.
CAmount CWalletTx::GetChange | ( | ) | const |
CAmount CWallet::GetChange | ( | const CTransaction & | tx | ) | const |
std::set< uint256 > CWalletTx::GetConflicts | ( | ) | const |
Definition at line 1733 of file wallet.cpp.
Get wallet transactions that conflict with given transaction (spend same outputs)
Definition at line 476 of file wallet.cpp.
CAmount CWalletTx::GetCredit | ( | const isminefilter & | filter | ) | const |
CAmount CWallet::GetCredit | ( | const CTxOut & | txout, |
const isminefilter & | filter | ||
) | const |
Definition at line 1289 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 1745 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 1256 of file wallet.cpp.
CAmount CWallet::GetDebit | ( | const CTxIn & | txin, |
const isminefilter & | filter, | ||
CAssetOutputEntry & | assetData | ||
) | const |
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 |
Definition at line 130 of file wallet.cpp.
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 499 of file wallet.cpp.
int64_t CWallet::IncOrderPosNext | ( | CWalletDB * | pwalletdb = nullptr | ) |
Increment the next transaction order id.
Definition at line 762 of file wallet.cpp.
bool CWalletTx::InMempool | ( | ) | const |
Definition at line 1905 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 1350 of file wallet.cpp.
bool CWallet::IsChange | ( | const CTxOut & | txout | ) | const |
Definition at line 1296 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 1333 of file wallet.cpp.
bool CWallet::IsHDEnabled | ( | ) | const |
isminetype CWallet::IsMine | ( | const CTxIn & | txin | ) | const |
Definition at line 1241 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 553 of file wallet.cpp.
bool CWalletTx::IsTrusted | ( | ) | const |
Definition at line 1911 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 288 of file wallet.cpp.
bool CWallet::LoadCScript | ( | const CScript & | redeemScript | ) |
Definition at line 316 of file wallet.cpp.
bool CWallet::LoadKeyMetadata | ( | const CTxDestination & | pubKey, |
const CKeyMetadata & | metadata | ||
) |
Load metadata (used by LoadWallet)
Definition at line 280 of file wallet.cpp.
bool CWallet::LoadToWallet | ( | const CWalletTx & | wtxIn | ) |
Definition at line 968 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 361 of file wallet.cpp.
void CWallet::MarkDirty | ( | ) |
Mark a transaction as replaced by another transaction (e.g., BIP 125).
Definition at line 855 of file wallet.cpp.
void CWallet::ReacceptWalletTransactions | ( | ) |
Definition at line 1678 of file wallet.cpp.
bool CWalletTx::RelayWalletTransaction | ( | CConnman * | connman | ) |
Definition at line 1711 of file wallet.cpp.
|
overridevirtual |
Reimplemented from CBasicKeyStore.
Definition at line 348 of file wallet.cpp.
DBErrors CWallet::ReorderTransactions | ( | ) |
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 1595 of file wallet.cpp.
|
overridevirtual |
Tells listeners to broadcast their data.
Reimplemented from CValidationInterface.
Definition at line 1976 of file wallet.cpp.
std::vector< uint256 > CWallet::ResendWalletTransactionsBefore | ( | int64_t | nTime, |
CConnman * | connman | ||
) |
Definition at line 1951 of file wallet.cpp.
CBlockIndex * CWallet::ScanForWalletTransactions | ( | CBlockIndex * | pindexStart, |
CBlockIndex * | pindexStop, | ||
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.
If pindexStop is not a nullptr, the scan will stop at the block-index defined by pindexStop
Definition at line 1627 of file wallet.cpp.
|
overridevirtual |
Notifies listeners of the new active block chain on-disk.
Reimplemented from CValidationInterface.
Definition at line 432 of file wallet.cpp.
bool CWallet::SetHDChain | ( | const CHDChain & | chain, |
bool | memonly | ||
) |
Definition at line 1443 of file wallet.cpp.
bool CWallet::SetHDSeed | ( | const CPubKey & | key | ) |
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 464 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 438 of file wallet.cpp.
|
private |
|
private |
Definition at line 1191 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 1208 of file wallet.cpp.
bool CWallet::TransactionCanBeAbandoned | ( | const uint256 & | hashTx | ) | const |
Return whether transaction can be abandoned.
Definition at line 1062 of file wallet.cpp.
bool CWallet::Unlock | ( | const SecureString & | strWalletPassphrase | ) |
Definition at line 366 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 297 of file wallet.cpp.