Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mempool only CHECKLOCKTIMEVERIFY (BIP65) verification, unparameterized version #6124

Merged
merged 4 commits into from Jun 26, 2015

Commits on May 9, 2015

  1. Make CScriptNum() take nMaxNumSize as an argument

    While the existing numeric opcodes are all limited to 4-byte bignum
    arguments, new opcodes will need different limits.
    petertodd committed May 9, 2015
    Copy the full SHA
    99088d6 View commit details
    Browse the repository at this point in the history
  2. Move LOCKTIME_THRESHOLD to src/script/script.h

    Will now be needed by CHECKLOCKTIMEVERIFY code.
    petertodd committed May 9, 2015
    Copy the full SHA
    48e9c57 View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2015

  1. Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65)

    <nLockTime> CHECKLOCKTIMEVERIFY -> <nLockTime>
    
    Fails if tx.nLockTime < nLockTime, allowing the funds in a txout to be
    locked until some block height or block time in the future is reached.
    
    Only the logic and unittests are implemented; this commit does not have
    any actual soft-fork logic in it.
    
    Thanks to Pieter Wuille for rebase.
    
    Credit goes to Gregory Maxwell for the suggestion of comparing the
    argument against the transaction nLockTime rather than the current
    time/blockheight directly.
    petertodd committed Jun 22, 2015
    Copy the full SHA
    bc60b2b View commit details
    Browse the repository at this point in the history
  2. Enable CHECKLOCKTIMEVERIFY as a standard script verify flag

    Transactions that fail CLTV verification will be rejected from the
    mempool, making it easy to test the feature. However blocks containing
    "invalid" CLTV-using transactions will still be accepted; this is *not*
    the soft-fork required to actually enable CLTV for production use.
    petertodd committed Jun 22, 2015
    Copy the full SHA
    ffd75ad View commit details
    Browse the repository at this point in the history