dcrd/txscript
Dave Collins 5f8046a97c
txscript: Don't use GetScriptClass in consensus.
This modifies the consensus critical function which determines if the
redeem script of a p2sh or stake-tagged p2sh contains stake opcodes to
avoid calling the GetScriptClass function which is only intended
explicitly for working with standard script forms which only apply in
the context of the more restrictive standardness policy rules.

It also renames the function to better indicate its purpose is to
specifically check the redeem script as opposed to the entire signature
script.
2020-02-13 15:45:07 -06:00
..
data multi: Correct typos. 2019-08-16 17:37:58 -05:00
bench_test.go txscript: Use dcrutil/v2. 2019-06-24 15:13:39 -05:00
consensus_test.go multi: Break coinbase dep on standardness rules. 2018-05-08 12:49:40 -05:00
consensus.go blockchain: Do coinbase nulldata check locally. 2019-06-19 13:26:33 -05:00
doc.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
engine_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
engine.go txscript: Don't use GetScriptClass in consensus. 2020-02-13 15:45:07 -06:00
error_test.go txscript: Introduce zero-alloc script tokenizer. 2019-03-26 14:50:56 -05:00
error.go multi: Correct typos. 2019-08-22 10:20:03 -05:00
example_test.go secp256k1: Make private key independent type. 2020-02-10 22:40:34 -06:00
go.mod secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
go.sum chaincfg: Start v3 module dev cycle. 2020-01-29 13:24:14 -06:00
log.go txscript: Remove DisableLog. 2019-06-24 15:13:30 -05:00
opcode_test.go txscript: Make op callbacks take opcode and data. 2019-03-26 14:55:46 -05:00
opcode.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
README.md build: Replace TravisCI with CI via Github actions. 2019-09-20 19:59:04 -05:00
reference_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
script_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
script.go txscript: Don't use GetScriptClass in consensus. 2020-02-13 15:45:07 -06:00
scriptbuilder_test.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
scriptbuilder.go txscript: code cleanup 2019-02-08 09:18:53 -05:00
scriptnum_test.go txscript: Remove script num require minimal flag. 2018-07-02 12:14:15 -05:00
scriptnum.go multi: remove whitespace 2019-11-21 18:31:30 -06:00
sigcache_test.go secp256k1: Make private key independent type. 2020-02-10 22:40:34 -06:00
sigcache.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
sighash_test.go txscript: Decouple and optimize sighash calc. 2018-05-01 08:51:41 -05:00
sighash.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
sign_test.go secp256k1: Make private key independent type. 2020-02-10 22:40:34 -06:00
sign.go secp256k1: Make private key independent type. 2020-02-10 22:40:34 -06:00
stack_test.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
stack.go txscript: code cleanup 2019-02-08 09:18:53 -05:00
standard_test.go secp256k1: Start v3 module dev cycle. 2020-01-29 13:45:59 -06:00
standard.go txscript: Don't use GetScriptClass in consensus. 2020-02-13 15:45:07 -06:00
tokenizer_test.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
tokenizer.go multi: remove whitespace 2019-11-21 18:31:30 -06:00

txscript

Build Status ISC License GoDoc

Package txscript implements the Decred transaction script language. There is a comprehensive test suite.

This package has intentionally been designed so it can be used as a standalone package for any projects needing to use or validate Decred transaction scripts.

Decred Scripts

Decred provides a stack-based, FORTH-like language for the scripts in the Decred transactions. This language is not turing complete although it is still fairly powerful.

Installation and Updating

$ go get -u github.com/decred/dcrd/txscript

Examples

License

Package txscript is licensed under the copyfree ISC License.