aboutsummaryrefslogtreecommitdiff
path: root/src/script/script.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright headers to 2018DrahtBot2018-07-271-1/+1
|
* Remove template matching and pseudo opcodesPieter Wuille2018-05-291-5/+0
| | | | | | | | | | | | | The current code contains a rather complex script template matching engine, which is only used for 3 particular script types (P2PK, P2PKH, multisig). The first two of these are trivial to match for otherwise, and a specialized matcher for multisig is both more compact and more efficient than a generic one. The goal is being more flexible, so that for example larger standard multisigs inside SegWit outputs are more easy to implement. As a side-effect, it also gets rid of the pseudo opcodes hack.
* [MOVEONLY] Turn CScript::GetOp2 into a function and move to cppPieter Wuille2018-04-131-0/+52
|
* Increment MIT Licence copyright header year on files modified in 2017Akira Takizawa2018-01-031-1/+1
|
* scripted-diff: Replace #include "" with #include <> (ryanofsky)MeshCollider2017-11-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -BEGIN VERIFY SCRIPT- for f in \ src/*.cpp \ src/*.h \ src/bench/*.cpp \ src/bench/*.h \ src/compat/*.cpp \ src/compat/*.h \ src/consensus/*.cpp \ src/consensus/*.h \ src/crypto/*.cpp \ src/crypto/*.h \ src/crypto/ctaes/*.h \ src/policy/*.cpp \ src/policy/*.h \ src/primitives/*.cpp \ src/primitives/*.h \ src/qt/*.cpp \ src/qt/*.h \ src/qt/test/*.cpp \ src/qt/test/*.h \ src/rpc/*.cpp \ src/rpc/*.h \ src/script/*.cpp \ src/script/*.h \ src/support/*.cpp \ src/support/*.h \ src/support/allocators/*.h \ src/test/*.cpp \ src/test/*.h \ src/wallet/*.cpp \ src/wallet/*.h \ src/wallet/test/*.cpp \ src/wallet/test/*.h \ src/zmq/*.cpp \ src/zmq/*.h do base=${f%/*}/ relbase=${base#src/} sed -i "s:#include \"\(.*\)\"\(.*\):if test -e \$base'\\1'; then echo \"#include <\"\$relbase\"\\1>\\2\"; else echo \"#include <\\1>\\2\"; fi:e" $f done -END VERIFY SCRIPT-
* Sanity check transaction scripts in DecodeHexTxAndrew Chow2017-06-071-1/+2
| | | | Make sure that the scripts of decoded transactions are valid scripts.
* Add a valid opcode sanity check to CScriptAndrew Chow2017-06-071-0/+12
| | | | | | Added a function in CScript that checks if the script contains valid opcodes. Add a test for that function
* Refactor: Remove using namespace <xxx> from script/Karl-Johan Alm2017-03-081-3/+1
|
* Merge #8808: Do not shadow variables (gcc set)Wladimir J. van der Laan2017-03-031-3/+3
|\ | | | | | | | | | | | | ad1ae7a Check and enable -Wshadow by default. (Pavel Janík) 9de90bb Do not shadow variables (gcc set) (Pavel Janík) Tree-SHA512: 9517feb423dc8ddd63896016b25324673bfbe0bffa97f22996f59d7a3fcbdc2ebf2e43ac02bc067546f54e293e9b2f2514be145f867321e9031f895c063d9fb8
| * Do not shadow variables (gcc set)Pavel Janík2016-12-051-3/+3
| |
* | [trivial] Fix typos in commentspracticalswift2017-01-271-1/+1
| |
* | Increment MIT Licence copyright header year on files modified in 2016isle29832016-12-311-1/+1
|/ | | | | | Edited via: $ contrib/devtools/copyright_header.py update .
* Rename OP_NOP3 to OP_CHECKSEQUENCEVERIFYBtcDrak2016-06-281-1/+1
|
* [RPC] signrawtransaction can sign P2WSHNicolasDorier2016-06-221-0/+8
|
* BIP141: Witness programPieter Wuille2016-06-221-0/+18
|
* BIP144: Serialization, hashes, relay (sender side)Pieter Wuille2016-06-221-0/+12
| | | | | | Contains refactorings by Eric Lombrozo. Contains fixup by Nicolas Dorier. Contains cleanup of CInv::GetCommand by Alex Morcos
* Merge pull request #7205Wladimir J. van der Laan2016-01-051-1/+1
|\ | | | | | | | | | | fa71669 [devtools] Use git pretty-format for year parsing (MarcoFalke) fa24439 Bump copyright headers to 2015 (MarcoFalke) fa6ad85 [devtools] Rewrite fix-copyright-headers.py (MarcoFalke)
| * Bump copyright headers to 2015MarcoFalke2015-12-131-1/+1
| |
* | Rename OP_NOP2 to OP_CHECKLOCKTIMEVERIFY.mb300sd2015-12-151-1/+1
|/
* Prevector typePieter Wuille2015-11-131-3/+3
|
* script: Remove magic numbersDavid Hill2015-10-151-1/+1
| | | | | This adds two new constants, MAX_OPS_PER_SCRIPT and MAX_PUBKEYS_PER_MULTISIG.
* Accept any sequence of PUSHDATAs in OP_RETURN outputsPeter Todd2015-10-011-1/+1
| | | | | | | | | | | | Previously only one PUSHDATA was allowed, needlessly limiting applications such as matching OP_RETURN contents with bloom filters that operate on a per-PUSHDATA level. Now any combination that passes IsPushOnly() is allowed, so long as the total size of the scriptPubKey is less than 42 bytes. (unchanged modulo non-minimal PUSHDATA encodings) Also, this fixes the odd bug where previously the PUSHDATA could be replaced by any single opcode, even sigops consuming opcodes such as CHECKMULTISIG. (20 sigops!)
* Add IsPushOnly(const_iterator pc)Peter Todd2015-10-011-2/+6
| | | | | Allows IsPushOnly() to be applied to just part of the script for OP_RETURN outputs.
* Resolve issue 3166.mruddy2015-07-301-33/+0
| | | | | These changes decode valid SIGHASH types on signatures in assembly (asm) representations of scriptSig scripts. This squashed commit incorporates substantial helpful feedback from jtimon, laanwj, and sipa.
* Separate core memory usage computation in core_memusage.hPieter Wuille2015-07-201-5/+0
|
* Implement accurate memory accounting for mempoolPieter Wuille2015-07-101-0/+5
|
* Added "Core" to copyright headerssandakersmann2014-12-191-1/+1
| | | | | Github-Pull: #5494 Rebased-From: 15de949bb9277e442302bdd8dee299a8d6deee60
* Add SCRIPT_VERIFY_MINIMALDATA (BIP62 rules 3 and 4)Pieter Wuille2014-10-251-28/+1
| | | | | Also use the new flag as a standard rule, and replace the IsCanonicalPush standardness check with it (as it is more complete).
* Add SCRIPT_VERIFY_SIGPUSHONLY (BIP62 rule 2)Pieter Wuille2014-10-251-1/+1
|
* script: add a slew of includes all around and drop includes from script.hCory Fields2014-10-171-1/+2
| | | | Lots of files ended up with indirect includes from script.h.
* script: move ToString and ValueString out of the headerCory Fields2014-10-171-0/+33
|
* Move CTxDestination from script/script to script/standardPieter Wuille2014-09-161-40/+0
|
* cleanup new script files (no code changes)Philip Kaufmann2014-09-141-2/+2
| | | | | | - add missing header end comments - ensure alphabetical ordering - update copyright year and license
* Move CScript class and dependencies to script/scriptjtimon2014-09-081-0/+295