Branch data Line data Source code
1 : : // Copyright (c) 2019-2020 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 <consensus/validation.h>
6 : : #include <core_memusage.h>
7 : : #include <policy/policy.h>
8 : : #include <primitives/transaction.h>
9 : : #include <streams.h>
10 : : #include <test/fuzz/fuzz.h>
11 : :
12 : : #include <cassert>
13 : :
14 [ + - ]: 500 : FUZZ_TARGET(tx_in)
15 : : {
16 : 88 : DataStream ds{buffer};
17 : 88 : CTxIn tx_in;
18 : 88 : try {
19 [ + + ]: 88 : ds >> tx_in;
20 [ - + ]: 22 : } catch (const std::ios_base::failure&) {
21 : 22 : return;
22 : 22 : }
23 : :
24 : 66 : (void)GetTransactionInputWeight(tx_in);
25 [ + - ]: 66 : (void)GetVirtualTransactionInputSize(tx_in);
26 : 66 : (void)RecursiveDynamicUsage(tx_in);
27 : :
28 [ + - ]: 132 : (void)tx_in.ToString();
29 : 88 : }
|