|
OlinCoin
Test
|
#include "base_tx.h"#include "utxo_pool.h"#include "mempool.h"#include "constants.h"#include "crypto.h"#include "create_block.h"#include "validate_tx.h"#include "utxo_to_tx.h"#include "double_spend_set.h"
Functions | |
| 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. More... | |
| int | check_input_unlockable (Input *input, unsigned char *blank_tx_hash) |
| Check if a given input is unlockable iwth it's unlock script. More... | |
| int | validate_input_matches_utxopool (Input *input) |
| Check if the inputs to a transaction exists in the utxo pool ignoring spent flag now. This cna likely be replaced by just checkign to see if the tx is in the mempool. More... | |
| int | validate_input (Input *input, unsigned char *blank_tx_hash) |
| Wrapper to validate a transactions input in various ways, inputs size, utxo available, unlockable. More... | |
| 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 transaction. More... | |
| int | validate_coinbase_tx_parts_not_null (Transaction *coinbase_tx) |
| Check if a coinbase TX has a Null value in an improper place. More... | |
| int | validate_tx_shared (Transaction *tx) |
| Overall wrapper to validate an entire transaction that is NOT a Coinbase_tx. More... | |
| int | check_tx_double_spent (Transaction *tx) |
| Check if UTXO is double-spent in a transaction. More... | |
| int | check_inputs_not_in_mempool (Transaction *tx) |
| Check if an UTXO in a transaction is already referenced in the mempool. More... | |
| int | validate_tx_incoming (Transaction *tx) |
| Validate incoming transactions from the network (different than block transaction validation) More... | |
| int check_input_unlockable | ( | Input * | input, |
| unsigned char * | blank_tx_hash | ||
| ) |
Check if a given input is unlockable iwth it's unlock script.
| input | input to check |
| blank_tx_hash | blank tx hash that the tx was signed with |
| int check_inputs_not_in_mempool | ( | Transaction * | tx | ) |
Check if an UTXO in a transaction is already referenced in the mempool.
| tx | transaction to check |
| int check_tx_double_spent | ( | Transaction * | tx | ) |
Check if UTXO is double-spent in a transaction.
| tx | transaction to check |
| 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.
| blank_hash | destination for the blank signature hash |
| tx | transaction to blank and hash |
| int validate_coinbase_tx_parts_not_null | ( | Transaction * | tx | ) |
Check if a coinbase TX has a Null value in an improper place.
| tx | coinbase tx to check |
| int validate_input | ( | Input * | input, |
| unsigned char * | blank_tx_hash | ||
| ) |
Wrapper to validate a transactions input in various ways, inputs size, utxo available, unlockable.
| input | input to validate |
| blank_tx_hash | tx hash of the larger transaction with signatures blanked |
| int validate_input_matches_utxopool | ( | Input * | input | ) |
Check if the inputs to a transaction exists in the utxo pool ignoring spent flag now. This cna likely be replaced by just checkign to see if the tx is in the mempool.
| input | input to validate |
| int validate_tx_incoming | ( | Transaction * | tx | ) |
Validate incoming transactions from the network (different than block transaction validation)
| tx | transaction to validate |
| 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 transaction.
| tx | transaction to validate |
| int validate_tx_shared | ( | Transaction * | tx | ) |
Overall wrapper to validate an entire transaction that is NOT a Coinbase_tx.
| tx | transaction to validate |