Pieter Wuille
985c79552c
Improve witness destination types and use them more
2018-01-03 05:43:06 -08:00
MeshCollider
1a445343f6
scripted-diff: Replace #include "" with #include <> (ryanofsky)
...
-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-
2017-11-16 08:23:01 +13:00
Pieter Wuille
c091b99379
Implement BIP173 addresses and tests
2017-09-28 16:24:30 -07:00
Pieter Wuille
5c8ff0d448
Introduce wrappers around CBitcoinAddress
...
This patch removes the need for the intermediary Base58 type
CBitcoinAddress, by providing {Encode,Decode,IsValid}Destination
function that directly operate on the conversion between strings
and CTxDestination.
2017-09-06 13:07:45 -07:00
Jim Posen
360b464a08
Comments: More comments on functions/globals in standard.h.
2017-08-18 14:45:08 -07:00
isle2983
27765b6403
Increment MIT Licence copyright header year on files modified in 2016
...
Edited via:
$ contrib/devtools/copyright_header.py update .
2016-12-31 11:01:21 -07:00
Pieter Wuille
605e8473a7
BIP143: Signing logic
2016-06-22 15:43:01 +02:00
MarcoFalke
fada0c422c
[doc] Fix doxygen comments for members
2016-04-03 11:58:01 +02:00
Pieter Wuille
5d743099b5
Get rid of inaccurate ScriptSigArgsExpected
...
(cherry picked from commit 52b29dca7670c3f6d2ab918c0fff1d17c4e494ad)
2016-02-01 15:28:25 +01:00
MarcoFalke
fa24439ff3
Bump copyright headers to 2015
2015-12-13 18:08:39 +01:00
MarcoFalke
faf93f37fe
[trivial] Reuse translation and cleanup DEFAULT_* values
...
* DEFAULT_DISABLE_SAFEMODE = false
* Use DEFAULT_* constants for extern bools
2015-11-28 19:01:11 +01:00
Luke Dashjr
b966aa836a
Constrain constant values to a single location in code
2015-11-28 18:47:29 +01:00
Peter Todd
da894ab5da
Accept any sequence of PUSHDATAs in OP_RETURN outputs
...
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!)
2015-10-01 18:28:13 +02:00
Matt Corallo
cfc3dd3428
Also remove pay-2-pubkey from watch when adding a priv key
2015-07-20 16:01:37 -07:00
Luke Dashjr
9238ecb417
Policy: MOVEONLY: 3 functions to policy.o:
...
- [script/standard.o] IsStandard
- [main.o] IsStandardTx
- [main.o] AreInputsStandard
Also, don't use namespace std in policy.cpp
2015-06-26 17:59:10 +02:00
Jorge Timón
627b9deff4
Policy: MOVEONLY: Create policy/policy.h with some constants
2015-06-26 17:59:07 +02:00
Peter Todd
ffd75adce0
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.
2015-06-22 00:00:48 -04:00
Wladimir J. van der Laan
fcf646c9b0
Merge pull request #5286
...
44e9a6b
Update the 'test_IsStandard' unit test (Flavien Charlon)
a930658
Change the default maximum OP_RETURN size to 80 bytes (Flavien Charlon)
2015-02-03 13:12:44 +01:00
Pieter Wuille
5a47811da5
BIP66 changeover logic
2015-02-01 17:51:24 -04:00
Wladimir J. van der Laan
48e1765e27
Merge pull request #5143
...
da918ac
Make SCRIPT_VERIFY_CLEANSTACK a standardness requirement (Pieter Wuille)
b6e03cc
Add SCRIPT_VERIFY_CLEANSTACK (BIP62 rule 6) (Pieter Wuille)
ae4151b
No semantic change: reuse stack variable in P2SH evaluation (Pieter Wuille)
2015-01-08 12:01:22 +01:00
Wladimir J. van der Laan
4f1524966a
Replace direct use of 0 with SetNull and IsNull
...
Replace x=0 with .SetNull(),
x==0 with IsNull(), x!=0 with !IsNull().
Replace uses of uint256(0) with uint256().
2015-01-05 15:45:34 +01:00
sandakersmann
f914f1a746
Added "Core" to copyright headers
...
Github-Pull: #5494
Rebased-From: 15de949bb9277e442302bdd8dee299a8d6deee60
2014-12-19 19:55:32 +01:00
Pieter Wuille
da918ac06e
Make SCRIPT_VERIFY_CLEANSTACK a standardness requirement
2014-11-25 12:38:01 +01:00
Peter Todd
03914234b3
Discourage NOPs reserved for soft-fork upgrades
...
NOP1 to NOP10 are reserved for future soft-fork upgrades. In the event
of an upgrade such NOPs have *VERIFY behavior, meaning that if their
arguments are not correct the script fails. Discouraging these NOPs by
rejecting transactions containing them from the mempool ensures that
we'll never accept transactions, nor mine blocks, with scripts that are
now invalid according to the majority of hashing power even if we're not
yet upgraded. Previously this wasn't an issue as the IsStandard() rules
didn't allow upgradable NOPs anyway, but 7f3b4e95
relaxed the
IsStandard() rules for P2SH redemptions allowing any redeemScript to be
spent.
We *do* allow upgradable NOPs in scripts so long as they are not
executed. This is harmless as there is no opportunity for the script to
be invalid post-upgrade.
2014-11-17 22:22:33 -05:00
Flavien Charlon
a9306587a4
Change the default maximum OP_RETURN size to 80 bytes
...
The value can be changed through the '-datacarriersize' option, this
is modifying the default value for that option.
2014-11-14 10:20:58 +00:00
Michael Ford
b9a36b15bf
Make comments in /src/script doxygen compatible
2014-11-10 14:51:55 +08:00
Philip Kaufmann
b4347f6035
minor code style cleanup after recent merges
...
- add a missing license header
- correct some header orderings etc.
2014-11-04 14:36:46 +01:00
Wladimir J. van der Laan
df504e924a
Merge pull request #5196
...
8473862
Fix all header defines (Pavel Janík)
2014-11-04 09:33:22 +01:00
Wladimir J. van der Laan
73b82a3089
Merge pull request #5162
...
d2e74c5
boost: moveonly: split CPubKey and friends to new files (Cory Fields)
78c228c
boost: moveonly: move BIP32Hash to hash.h (Cory Fields)
900078a
boost: moveonly: create eccryptoverify.h|cpp and move helper functions there (Cory Fields)
2014-11-04 09:26:45 +01:00
Pavel Janík
84738627ce
Fix all header defines
2014-11-03 16:16:40 +01:00
Wladimir J. van der Laan
96012e83f1
Merge pull request #5077
...
2aa6329
Enable customising node policy for datacarrier data size with a -datacarriersize option (Luke Dashjr)
2014-10-31 11:16:09 +01:00
Cory Fields
d2e74c55bd
boost: moveonly: split CPubKey and friends to new files
2014-10-31 01:19:37 -04:00
Luke Dashjr
2aa632921e
Enable customising node policy for datacarrier data size with a -datacarriersize option
2014-10-27 09:41:57 +00:00
Pieter Wuille
698c6abb25
Add SCRIPT_VERIFY_MINIMALDATA (BIP62 rules 3 and 4)
...
Also use the new flag as a standard rule, and replace the IsCanonicalPush
standardness check with it (as it is more complete).
2014-10-25 03:03:20 -07:00
Cory Fields
85c579e3a6
script: add a slew of includes all around and drop includes from script.h
...
Lots of files ended up with indirect includes from script.h.
2014-10-17 13:44:57 -04:00
Cory Fields
066e2a1403
script: move CScriptID to standard.h and add a ctor for creating them from CScripts
...
This allows for a reversal of the current behavior.
This:
CScript foo;
CScriptID bar(foo.GetID());
Becomes:
CScript foo;
CScriptID bar(foo);
This way, CScript is no longer dependent on CScriptID or Hash();
2014-10-17 13:44:14 -04:00
Pieter Wuille
0be990ba34
Move CTxDestination from script/script to script/standard
2014-09-16 19:14:32 +02:00
Philip Kaufmann
2d79bba36b
cleanup new script files (no code changes)
...
- add missing header end comments
- ensure alphabetical ordering
- update copyright year and license
2014-09-14 12:25:38 +02:00
jtimon
c4408a6c85
Separate script/standard
2014-09-08 20:21:35 +02:00