![]() |
Bitcoin Core
26.99.0
P2P Digital Currency
|
Classes | |
struct | BlockManagerOpts |
An options struct for BlockManager , more ergonomically referred to as BlockManager::Options due to the using-declaration in BlockManager . More... | |
struct | ChainstateManagerOpts |
An options struct for ChainstateManager , more ergonomically referred to as ChainstateManager::Options due to the using-declaration in ChainstateManager . More... | |
struct | CCoinsStats |
struct | Context |
Context struct holding the kernel library's logically global state, and passed to external libbitcoin_kernel functions which need access to this state. More... | |
struct | MemPoolLimits |
Options struct containing limit options for a CTxMemPool. More... | |
struct | MemPoolOptions |
Options struct containing options for constructing a CTxMemPool. More... | |
struct | ImportMempoolOptions |
struct | Interrupted |
Result type for use with std::variant to indicate that an operation should be interrupted. More... | |
class | Notifications |
A base class defining functions for notifying about certain kernel events. More... | |
struct | ValidationCacheSizes |
class | BlockTreeDB |
Access to the block database (blocks/index/) More... | |
Typedefs | |
using | InterruptResult = std::variant< std::monostate, Interrupted > |
Simple result type for functions that need to propagate an interrupt status and don't have other return values. More... | |
Enumerations | |
enum class | CoinStatsHashType { HASH_SERIALIZED , MUHASH , NONE } |
Functions | |
interfaces::BlockInfo | MakeBlockInfo (const CBlockIndex *block_index, const CBlock *data=nullptr) |
Return data from block index. More... | |
util::Result< void > | SanityChecks (const Context &) |
Ensure a usable environment with all necessary library support. More... | |
uint64_t | GetBogoSize (const CScript &script_pub_key) |
template<typename T > | |
static void | TxOutSer (T &ss, const COutPoint &outpoint, const Coin &coin) |
static void | ApplyCoinHash (HashWriter &ss, const COutPoint &outpoint, const Coin &coin) |
void | ApplyCoinHash (MuHash3072 &muhash, const COutPoint &outpoint, const Coin &coin) |
void | RemoveCoinHash (MuHash3072 &muhash, const COutPoint &outpoint, const Coin &coin) |
static void | ApplyCoinHash (std::nullptr_t, const COutPoint &outpoint, const Coin &coin) |
template<typename T > | |
static void | ApplyHash (T &hash_obj, const Txid &hash, const std::map< uint32_t, Coin > &outputs) |
Warning: be very careful when changing this! assumeutxo and UTXO snapshot validation commitments are reliant on the hash constructed by this function. More... | |
static void | ApplyStats (CCoinsStats &stats, const uint256 &hash, const std::map< uint32_t, Coin > &outputs) |
template<typename T > | |
static bool | ComputeUTXOStats (CCoinsView *view, CCoinsStats &stats, T hash_obj, const std::function< void()> &interruption_point) |
Calculate statistics about the unspent transaction output set. More... | |
std::optional< CCoinsStats > | ComputeUTXOStats (CoinStatsHashType hash_type, CCoinsView *view, node::BlockManager &blockman, const std::function< void()> &interruption_point) |
static void | FinalizeHash (HashWriter &ss, CCoinsStats &stats) |
static void | FinalizeHash (MuHash3072 &muhash, CCoinsStats &stats) |
static void | FinalizeHash (std::nullptr_t, CCoinsStats &stats) |
bool | LoadMempool (CTxMemPool &pool, const fs::path &load_path, Chainstate &active_chainstate, ImportMempoolOptions &&opts) |
Import the file and attempt to add its contents to the mempool. More... | |
bool | DumpMempool (const CTxMemPool &pool, const fs::path &dump_path, FopenFn mockable_fopen_function, bool skip_file_commit) |
bool | DumpMempool (const CTxMemPool &pool, const fs::path &dump_path, fsbridge::FopenFn mockable_fopen_function=fsbridge::fopen, bool skip_file_commit=false) |
Dump the mempool to a file. More... | |
template<typename T > | |
bool | IsInterrupted (const T &result) |
Variables | |
Context * | g_context |
Global pointer to kernel::Context for legacy code. More... | |
static const uint64_t | MEMPOOL_DUMP_VERSION_NO_XOR_KEY {1} |
static const uint64_t | MEMPOOL_DUMP_VERSION {2} |
static constexpr uint8_t | DB_BLOCK_FILES {'f'} |
static constexpr uint8_t | DB_BLOCK_INDEX {'b'} |
static constexpr uint8_t | DB_FLAG {'F'} |
static constexpr uint8_t | DB_REINDEX_FLAG {'R'} |
static constexpr uint8_t | DB_LAST_BLOCK {'l'} |
using kernel::InterruptResult = typedef std::variant<std::monostate, Interrupted> |
Simple result type for functions that need to propagate an interrupt status and don't have other return values.
Definition at line 23 of file notifications_interface.h.
|
strong |
Enumerator | |
---|---|
HASH_SERIALIZED | |
MUHASH | |
NONE |
Definition at line 26 of file coinstats.h.
|
static |
Definition at line 58 of file coinstats.cpp.
void kernel::ApplyCoinHash | ( | MuHash3072 & | muhash, |
const COutPoint & | outpoint, | ||
const Coin & | coin | ||
) |
|
static |
Definition at line 77 of file coinstats.cpp.
|
static |
Warning: be very careful when changing this! assumeutxo and UTXO snapshot validation commitments are reliant on the hash constructed by this function.
If the construction of this hash is changed, it will invalidate existing UTXO snapshots. This will not result in any kind of consensus failure, but it will force clients that were expecting to make use of assumeutxo to do traditional IBD instead.
It is also possible, though very unlikely, that a change in this construction could cause a previously invalid (and potentially malicious) UTXO snapshot to be considered valid.
Definition at line 92 of file coinstats.cpp.
|
static |
Definition at line 101 of file coinstats.cpp.
|
static |
Calculate statistics about the unspent transaction output set.
Definition at line 116 of file coinstats.cpp.
std::optional< CCoinsStats > kernel::ComputeUTXOStats | ( | CoinStatsHashType | hash_type, |
CCoinsView * | view, | ||
node::BlockManager & | blockman, | ||
const std::function< void()> & | interruption_point | ||
) |
bool kernel::DumpMempool | ( | const CTxMemPool & | pool, |
const fs::path & | dump_path, | ||
FopenFn | mockable_fopen_function, | ||
bool | skip_file_commit | ||
) |
Definition at line 139 of file mempool_persist.cpp.
bool kernel::DumpMempool | ( | const CTxMemPool & | pool, |
const fs::path & | dump_path, | ||
fsbridge::FopenFn | mockable_fopen_function = fsbridge::fopen , |
||
bool | skip_file_commit = false |
||
) |
Dump the mempool to a file.
|
static |
Definition at line 181 of file coinstats.cpp.
|
static |
|
static |
Definition at line 191 of file coinstats.cpp.
uint64_t kernel::GetBogoSize | ( | const CScript & | script_pub_key | ) |
Definition at line 40 of file coinstats.cpp.
bool kernel::IsInterrupted | ( | const T & | result | ) |
Definition at line 26 of file notifications_interface.h.
bool kernel::LoadMempool | ( | CTxMemPool & | pool, |
const fs::path & | load_path, | ||
Chainstate & | active_chainstate, | ||
ImportMempoolOptions && | opts | ||
) |
Import the file and attempt to add its contents to the mempool.
Definition at line 41 of file mempool_persist.cpp.
interfaces::BlockInfo kernel::MakeBlockInfo | ( | const CBlockIndex * | index, |
const CBlock * | data | ||
) |
void kernel::RemoveCoinHash | ( | MuHash3072 & | muhash, |
const COutPoint & | outpoint, | ||
const Coin & | coin | ||
) |
Definition at line 70 of file coinstats.cpp.
util::Result< void > kernel::SanityChecks | ( | const Context & | ) |
Ensure a usable environment with all necessary library support.
Definition at line 16 of file checks.cpp.
|
staticconstexpr |
Definition at line 43 of file blockstorage.cpp.
|
staticconstexpr |
Definition at line 44 of file blockstorage.cpp.
|
staticconstexpr |
Definition at line 45 of file blockstorage.cpp.
|
staticconstexpr |
Definition at line 47 of file blockstorage.cpp.
|
staticconstexpr |
Definition at line 46 of file blockstorage.cpp.
Context * kernel::g_context |
Global pointer to kernel::Context for legacy code.
New code should avoid using this, and require state it needs to be passed to it directly.
Having this pointer is useful because it allows state be moved out of global variables into the kernel::Context struct before all global references to that state are removed. This allows the global references to be removed incrementally, instead of all at once.
Definition at line 17 of file context.cpp.
|
static |
Definition at line 39 of file mempool_persist.cpp.
|
static |
Definition at line 38 of file mempool_persist.cpp.