Function bitcoin_txmempool::check_input_scripts
source · pub fn check_input_scripts(
tx: &Transaction,
state: &mut TxValidationState,
inputs: &CoinsViewCache,
flags: u32,
cache_sig_store: bool,
cache_full_script_store: bool,
txdata: &mut PrecomputedTransactionData,
pv_checks: Amo<Vec<ScriptCheck>>
) -> boolExpand description
| Check whether all of this transaction’s | input scripts succeed. | | This involves ECDSA signature checks | so can be computationally intensive. | This function should only be called | after the cheap sanity checks in | | CheckTxInputs passed. | | If pvChecks is not nullptr, script checks | are pushed onto it instead of being performed | inline. Any script checks which are | not necessary (eg due to script execution | cache hits) are, obviously, not pushed | onto pvChecks/run. | | Setting cacheSigStore/cacheFullScriptStore | to false will remove elements from the | corresponding cache which are matched. | This is useful for checking blocks where | we will likely never need the cache entry | again. | | ———– | @note | | we may set state.reason to | | NOT_STANDARD for extra soft-fork flags | in flags, block-checking callers should | probably reset it to CONSENSUS in such | cases. | | Non-static (and re-declared) in src/test/txvalidationcache_tests.cpp |