Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
#include <chainparams.h>
#include <clientversion.h>
#include <consensus/validation.h>
#include <hash.h>
#include <primitives/block.h>
#include <primitives/transaction.h>
#include <validation.h>
#include <evo/cbtx.h>
#include <evo/deterministicmns.h>
#include <evo/specialtx.h>
#include <llmq/quorums_commitment.h>
#include <llmq/quorums_blockprocessor.h>
Go to the source code of this file.
Functions | |
bool | CheckSpecialTx (const CTransaction &tx, const CBlockIndex *pindexPrev, CValidationState &state) |
bool | ProcessSpecialTx (const CTransaction &tx, const CBlockIndex *pindex, CValidationState &state) |
bool | UndoSpecialTx (const CTransaction &tx, const CBlockIndex *pindex) |
bool | ProcessSpecialTxsInBlock (const CBlock &block, const CBlockIndex *pindex, CValidationState &state, bool fJustCheck, bool fCheckCbTxMerleRoots) |
bool | UndoSpecialTxsInBlock (const CBlock &block, const CBlockIndex *pindex) |
uint256 | CalcTxInputsHash (const CTransaction &tx) |
Function Documentation
◆ CalcTxInputsHash()
uint256 CalcTxInputsHash | ( | const CTransaction & | tx | ) |
Definition at line 174 of file specialtx.cpp.
References CLIENT_VERSION, CHashWriter::GetHash(), SER_GETHASH, and CTransaction::vin.
Referenced by CheckInputsHash().
◆ CheckSpecialTx()
bool CheckSpecialTx | ( | const CTransaction & | tx, |
const CBlockIndex * | pindexPrev, | ||
CValidationState & | state | ||
) |
Definition at line 20 of file specialtx.cpp.
References CheckCbTx(), llmq::CheckLLMQCommitment(), CheckProRegTx(), CheckProUpRegTx(), CheckProUpRevTx(), CheckProUpServTx(), CValidationState::DoS(), LogPrintf, CBlockIndex::nHeight, CTransaction::nType, CTransaction::nVersion, Params(), REJECT_INVALID, TRANSACTION_COINBASE, TRANSACTION_NORMAL, TRANSACTION_PROVIDER_REGISTER, TRANSACTION_PROVIDER_UPDATE_REGISTRAR, TRANSACTION_PROVIDER_UPDATE_REVOKE, TRANSACTION_PROVIDER_UPDATE_SERVICE, and TRANSACTION_QUORUM_COMMITMENT.
Referenced by AcceptToMemoryPoolWorker(), and ProcessSpecialTxsInBlock().
◆ ProcessSpecialTx()
bool ProcessSpecialTx | ( | const CTransaction & | tx, |
const CBlockIndex * | pindex, | ||
CValidationState & | state | ||
) |
Definition at line 52 of file specialtx.cpp.
References CValidationState::DoS(), CTransaction::nType, CTransaction::nVersion, REJECT_INVALID, TRANSACTION_COINBASE, TRANSACTION_NORMAL, TRANSACTION_PROVIDER_REGISTER, TRANSACTION_PROVIDER_UPDATE_REGISTRAR, TRANSACTION_PROVIDER_UPDATE_REVOKE, TRANSACTION_PROVIDER_UPDATE_SERVICE, and TRANSACTION_QUORUM_COMMITMENT.
Referenced by ProcessSpecialTxsInBlock().
◆ ProcessSpecialTxsInBlock()
bool ProcessSpecialTxsInBlock | ( | const CBlock & | block, |
const CBlockIndex * | pindex, | ||
CValidationState & | state, | ||
bool | fJustCheck, | ||
bool | fCheckCbTxMerleRoots | ||
) |
Definition at line 94 of file specialtx.cpp.
References BCLog::BENCHMARK, CheckCbTxMerkleRoots(), CheckSpecialTx(), deterministicMNManager, CValidationState::DoS(), GetTimeMicros(), LogPrint, LogPrintf, CBlockIndex::pprev, ProcessSpecialTx(), llmq::quorumBlockProcessor, REJECT_INVALID, and CBlock::vtx.
Referenced by CChainState::ConnectBlock(), and CChainState::RollforwardBlock().
◆ UndoSpecialTx()
bool UndoSpecialTx | ( | const CTransaction & | tx, |
const CBlockIndex * | pindex | ||
) |
Definition at line 73 of file specialtx.cpp.
References CTransaction::nType, CTransaction::nVersion, TRANSACTION_COINBASE, TRANSACTION_NORMAL, TRANSACTION_PROVIDER_REGISTER, TRANSACTION_PROVIDER_UPDATE_REGISTRAR, TRANSACTION_PROVIDER_UPDATE_REVOKE, TRANSACTION_PROVIDER_UPDATE_SERVICE, and TRANSACTION_QUORUM_COMMITMENT.
Referenced by UndoSpecialTxsInBlock().
◆ UndoSpecialTxsInBlock()
bool UndoSpecialTxsInBlock | ( | const CBlock & | block, |
const CBlockIndex * | pindex | ||
) |
Definition at line 150 of file specialtx.cpp.
References deterministicMNManager, error(), llmq::quorumBlockProcessor, strprintf, UndoSpecialTx(), and CBlock::vtx.
Referenced by CChainState::DisconnectBlock().