27 }
catch (
const std::ios_base::failure&) {
30 unsigned int nBlockHeight = 0;
33 }
catch (
const std::ios_base::failure& e) {
40 }
catch (
const std::ios_base::failure&) {
45 bool valid_mutable_tx =
true;
52 unsigned int nBlockHeight2 = 0;
53 ds_mtx >> nBlockHeight2;
55 }
catch (
const std::ios_base::failure&) {
56 valid_mutable_tx =
false;
58 assert(valid_tx == valid_mutable_tx);
82 }
catch (
const std::runtime_error&) {
const CChainParams & Params()
Return the currently selected parameters.
The basic transaction that is broadcasted on the network and contained in blocks.
bool IsNormalType() const
bool IsShieldedTx() const
bool ContainsZerocoins() const
const uint256 & GetHash() const
std::string ToString() const
unsigned int GetTotalSize() const
CAmount GetValueOut() const
bool HasP2CSOutputs() const
bool isSaplingVersion() const
bool hasSaplingData() const
Capture information about block/transaction validation.
std::string EncodeHexTx(const CTransaction &tx)
std::vector< uint8_t > buffer
bool IsStandardTx(const CTransactionRef &tx, int nBlockHeight, std::string &reason)
Check for standard transaction types.
constexpr deserialize_type deserialize
A mutable version of CTransaction.
void test_one_input(std::vector< uint8_t > buffer)
bool CheckTransactionColdStakingEnabled(const CTransaction &tx, CValidationState state)
bool CheckTransactionAllFlagsDisabled(const CTransaction &tx, CValidationState state)
std::shared_ptr< const CTransaction > CTransactionRef
bool IsFinalTx(const CTransactionRef &tx, int nBlockHeight, int64_t nBlockTime)
Check if transaction is final and can be included in a block with the specified height and time.
bool CheckTransaction(const CTransaction &tx, CValidationState &state, bool fColdStakingActive)
Transaction validation functions.
bool ContextualCheckTransaction(const CTransactionRef &tx, CValidationState &state, const CChainParams &chainparams, int nHeight, bool isMined, bool fIBD)
Context-dependent validity checks.
unsigned int GetLegacySigOpCount(const CTransaction &tx)
Count ECDSA signature operations the old-fashioned (pre-0.6) way.