Skip to content

Commit e89f568

Browse files
committed
merge bitcoin#24349: Split script formatting from script fuzz target
1 parent 4630c54 commit e89f568

File tree

3 files changed

+31
-8
lines changed

3 files changed

+31
-8
lines changed

src/Makefile.test.include

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,7 @@ test_fuzz_fuzz_SOURCES = \
336336
test/fuzz/script_bitcoin_consensus.cpp \
337337
test/fuzz/script_descriptor_cache.cpp \
338338
test/fuzz/script_flags.cpp \
339+
test/fuzz/script_format.cpp \
339340
test/fuzz/script_interpreter.cpp \
340341
test/fuzz/script_ops.cpp \
341342
test/fuzz/script_sigcache.cpp \

src/test/fuzz/script.cpp

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -131,12 +131,4 @@ FUZZ_TARGET(script, .init = initialize_script)
131131
(void)(tx_destination_1 == tx_destination_2);
132132
(void)(tx_destination_1 < tx_destination_2);
133133
}
134-
135-
(void)FormatScript(script);
136-
(void)ScriptToAsmStr(script, /*fAttemptSighashDecode=*/fuzzed_data_provider.ConsumeBool());
137-
138-
UniValue o1(UniValue::VOBJ);
139-
ScriptPubKeyToUniv(script, o1, /*include_hex=*/fuzzed_data_provider.ConsumeBool());
140-
UniValue o3(UniValue::VOBJ);
141-
ScriptToUniv(script, o3);
142134
}

src/test/fuzz/script_format.cpp

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
// Copyright (c) 2019-2022 The Bitcoin Core developers
2+
// Distributed under the MIT software license, see the accompanying
3+
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4+
5+
#include <chainparams.h>
6+
#include <core_io.h>
7+
#include <script/script.h>
8+
#include <test/fuzz/FuzzedDataProvider.h>
9+
#include <test/fuzz/fuzz.h>
10+
#include <test/fuzz/util.h>
11+
#include <univalue.h>
12+
13+
void initialize_script_format()
14+
{
15+
SelectParams(CBaseChainParams::REGTEST);
16+
}
17+
18+
FUZZ_TARGET(script_format, .init = initialize_script_format)
19+
{
20+
FuzzedDataProvider fuzzed_data_provider(buffer.data(), buffer.size());
21+
const CScript script{ConsumeScript(fuzzed_data_provider)};
22+
23+
(void)FormatScript(script);
24+
(void)ScriptToAsmStr(script, /*fAttemptSighashDecode=*/fuzzed_data_provider.ConsumeBool());
25+
26+
UniValue o1(UniValue::VOBJ);
27+
ScriptPubKeyToUniv(script, o1, /*include_hex=*/fuzzed_data_provider.ConsumeBool());
28+
UniValue o3(UniValue::VOBJ);
29+
ScriptToUniv(script, o3);
30+
}

0 commit comments

Comments
 (0)