aboutsummaryrefslogtreecommitdiff
path: root/src/main.h
diff options
context:
space:
mode:
authorAlex Morcos <morcos@chaincode.com>2015-12-07 15:44:16 -0500
committerAlex Morcos <morcos@chaincode.com>2016-02-10 15:35:33 -0500
commitc6c2f0fd782ccf607027414012f45c8f48561a30 (patch)
tree851d2b78c132cf851fafb35b6d62b7bf8f562ac6 /src/main.h
parentdc0305d15aa02819cd4763e1efe3876d674faea7 (diff)
Implement SequenceLocks functions
SequenceLocks functions are used to evaluate sequence lock times or heights per BIP 68. The majority of this code is copied from maaku in #6312 Further credit: btcdrak, sipa, NicolasDorier
Diffstat (limited to 'src/main.h')
-rw-r--r--src/main.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/main.h b/src/main.h
index 19623f4d96..66b766316e 100644
--- a/src/main.h
+++ b/src/main.h
@@ -341,7 +341,22 @@ bool IsFinalTx(const CTransaction &tx, int nBlockHeight, int64_t nBlockTime);
*/
bool CheckFinalTx(const CTransaction &tx, int flags = -1);
-/**
+/**
+ * Check if transaction is final per BIP 68 sequence numbers and can be included in a block.
+ * Consensus critical. Takes as input a list of heights at which tx's inputs (in order) confirmed.
+ */
+bool SequenceLocks(const CTransaction &tx, int flags, std::vector<int>* prevHeights, const CBlockIndex& block);
+
+/**
+ * Check if transaction will be BIP 68 final in the next block to be created.
+ *
+ * Calls SequenceLocks() with data from the tip of the current active chain.
+ *
+ * See consensus/consensus.h for flag definitions.
+ */
+bool CheckSequenceLocks(const CTransaction &tx, int flags);
+
+/**
* Closure representing one script verification
* Note that this stores references to the spending transaction
*/