aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2020-12-25 07:41:09 +0100
committerMarcoFalke <falke.marco@gmail.com>2020-12-25 07:41:43 +0100
commit443988d40699e2693a9269cc2c72808b09288b34 (patch)
tree9e4b02bee947382fbcd913adbdb5a08248043bb9 /src
parent1b31695c747eb9a99bf602f6dd4fde9b993f0740 (diff)
parentfa2630328687645fbc7dd1ea46aac32514025715 (diff)
Merge #20761: fuzz: Check that NULL_DATA is unspendable
fa2630328687645fbc7dd1ea46aac32514025715 fuzz: Check that NULL_DATA is unspendable (MarcoFalke) Pull request description: * Every script of type NULL_DATA must be unspendable * The only know types of unspendable scripts are NULL_DATA and certain NONSTANDARD scripts ACKs for top commit: sipa: utACK fa2630328687645fbc7dd1ea46aac32514025715 Tree-SHA512: 8297fbacf32b4868b12accc1c052d352d02d96540a1fc883de9d04a3df8734116deecc33046495c9a3af6d79fec7f8d63afbfa5e401a2ca8d7c70f0f13735c0d
Diffstat (limited to 'src')
-rw-r--r--src/test/fuzz/script.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/test/fuzz/script.cpp b/src/test/fuzz/script.cpp
index 892af655f6..f43689290a 100644
--- a/src/test/fuzz/script.cpp
+++ b/src/test/fuzz/script.cpp
@@ -72,6 +72,13 @@ FUZZ_TARGET_INIT(script, initialize_script)
TxoutType which_type;
(void)IsStandard(script, which_type);
+ if (which_type == TxoutType::NULL_DATA) {
+ assert(script.IsUnspendable());
+ }
+ if (script.IsUnspendable()) {
+ assert(which_type == TxoutType::NULL_DATA ||
+ which_type == TxoutType::NONSTANDARD);
+ }
(void)RecursiveDynamicUsage(script);
@@ -82,7 +89,6 @@ FUZZ_TARGET_INIT(script, initialize_script)
(void)script.IsPayToScriptHash();
(void)script.IsPayToWitnessScriptHash();
(void)script.IsPushOnly();
- (void)script.IsUnspendable();
(void)script.GetSigOpCount(/* fAccurate= */ false);
(void)FormatScript(script);