int check_input_unlockable(Input *input, unsigned char *blank_tx_hash)
Check if a given input is unlockable iwth it's unlock script.
Definition: validate_tx.c:48
int validate_tx_shared(Transaction *tx)
Overall wrapper to validate an entire transaction that is NOT a Coinbase_tx.
Definition: validate_tx.c:126
int check_inputs_not_in_mempool(Transaction *tx)
Check if an UTXO in a transaction is already referenced in the mempool.
Definition: validate_tx.c:172
int validate_input_matches_utxopool(Input *input)
Check if the inputs to a transaction exists in the utxo pool ignoring spent flag now....
Definition: validate_tx.c:58
int check_tx_double_spent(Transaction *tx)
Check if UTXO is double-spent in a transaction.
Definition: validate_tx.c:159
int validate_coinbase_tx_parts_not_null(Transaction *tx)
Check if a coinbase TX has a Null value in an improper place.
Definition: validate_tx.c:107
int validate_tx_parts_not_null(Transaction *tx)
Check if a Transaction (Not a coinbase tx) is malformed this should be the first check run on a trans...
Definition: validate_tx.c:88
int validate_tx_incoming(Transaction *tx)
Validate incoming transactions from the network (different than block transaction validation)
Definition: validate_tx.c:183
void create_blank_sig_txhash(unsigned char *blank_hash, Transaction *tx)
Create a copy of a transaction with blank signatures and hash it for signature validation.
Definition: validate_tx.c:21
int validate_input(Input *input, unsigned char *blank_tx_hash)
Wrapper to validate a transactions input in various ways, inputs size, utxo available,...
Definition: validate_tx.c:76