0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-02-03 09:56:38 -05:00
bitcoin-bitcoin-core/src
MarcoFalke 1488f55fa5
Merge bitcoin/bitcoin#22454: fuzz: Limit max ops in tx_pool fuzz targets
fa33ed4b3f fuzz: Limit max ops in tx_pool fuzz targets (MarcoFalke)

Pull request description:

  Without a size limit on the input data, the runtime is unbounded. Fix this by picking an upper bound on the maximum number of fuzz operations.

  Reproducer from OSS-Fuzz (without bug report):
  [clusterfuzz-testcase-tx_pool_standard-5963992253202432.log](https://github.com/bitcoin/bitcoin/files/6822465/clusterfuzz-testcase-tx_pool_standard-5963992253202432.log)

ACKs for top commit:
  practicalswift:
    cr ACK fa33ed4b3f

Tree-SHA512: 32098d573880afba12d510ac83519dc886a6c65d5207edb810f92c7c61edf5e2fc9c57e7b7a1ae656c02ce14e3595707dd6b93caf7956beb2bc817609e14d23d
2021-07-25 12:40:52 +02:00
..
bench Merge bitcoin/bitcoin#22232: refactor: Pass interpreter flags as uint32_t instead of signed int 2021-07-20 15:36:23 +02:00
compat Remove support for double serialization 2021-05-24 16:15:05 -07:00
config
consensus Merge bitcoin/bitcoin#22232: refactor: Pass interpreter flags as uint32_t instead of signed int 2021-07-20 15:36:23 +02:00
crc32c
crypto crypto: Make MuHash Remove method efficient 2021-04-19 20:28:46 +02:00
index Move pblocktree global to BlockManager 2021-07-15 13:54:09 +02:00
init Make SetupServerArgs callable without NodeContext 2021-06-10 09:58:45 -05:00
interfaces Merge bitcoin/bitcoin#22218: multiprocess: Add ipc::Context and ipc::capnp::Context structs 2021-07-22 08:26:30 +02:00
ipc Add ipc::Context and ipc::capnp::Context structs 2021-06-10 09:58:45 -05:00
leveldb
logging
node Merge bitcoin/bitcoin#22371: Move pblocktree global to BlockManager 2021-07-20 17:37:29 +02:00
policy MOVEONLY: context-free package policies 2021-06-02 17:26:44 +01:00
primitives
qt Merge bitcoin-core/gui#381: refactor: Make BitcoinCore class reusable 2021-07-22 10:02:10 +02:00
rpc Merge bitcoin/bitcoin#22383: rpc: Prefer to use txindex if available for GetTransaction 2021-07-22 20:13:43 +02:00
script Merge bitcoin/bitcoin#13533: [tests] Reduced number of validations in tx_validationcache_tests 2021-07-24 10:36:58 +02:00
secp256k1 Update libsecp256k1 subtree to latest upstream master 2021-04-23 11:35:15 -07:00
support
test Merge bitcoin/bitcoin#22454: fuzz: Limit max ops in tx_pool fuzz targets 2021-07-25 12:40:52 +02:00
univalue
util mempool: apply rule of 5 to epochguard.h, fix compiler warnings 2021-07-20 13:58:14 +02:00
wallet Reorder dumpwallet so that cs_main functions go first 2021-07-19 12:25:11 -04:00
zmq zmq: use msg: prefix over errno= in zmqError 2021-06-09 19:25:13 +08:00
.clang-format
addrdb.cpp banman: save the banlist in a JSON format on disk 2021-06-21 14:39:44 +02:00
addrdb.h banman: save the banlist in a JSON format on disk 2021-06-21 14:39:44 +02:00
addrman.cpp scripted-diff: remove ResetI2PPorts() (revert e0a2b390c1) 2021-07-19 14:33:21 +02:00
addrman.h [addrman] Remove unused test_before_evict argument from Good() 2021-07-20 16:17:51 +01:00
amount.h
arith_uint256.cpp
arith_uint256.h
attributes.h
banman.cpp banman: save the banlist in a JSON format on disk 2021-06-21 14:39:44 +02:00
banman.h banman: save the banlist in a JSON format on disk 2021-06-21 14:39:44 +02:00
base58.cpp
base58.h
bech32.cpp naming nits 2021-03-17 17:59:22 -07:00
bech32.h naming nits 2021-03-17 17:59:22 -07:00
bitcoin-cli-res.rc
bitcoin-cli.cpp cli: Implement human readable -getinfo. 2021-07-21 19:27:04 +08:00
bitcoin-tx-res.rc
bitcoin-tx.cpp Add support for SIGHASH_DEFAULT in RPCs, and make it default 2021-06-12 12:38:17 -07:00
bitcoin-util-res.rc
bitcoin-util.cpp refactor: Pass grind args vector as const reference 2021-06-18 20:10:07 +02:00
bitcoin-wallet-res.rc
bitcoin-wallet.cpp Remove unused OptionsCategory arg from AddCommand 2021-06-18 20:09:23 +02:00
bitcoind-res.rc
bitcoind.cpp Make SetupServerArgs callable without NodeContext 2021-06-10 09:58:45 -05:00
blockencodings.cpp
blockencodings.h
blockfilter.cpp
blockfilter.h
bloom.cpp
bloom.h
chain.cpp
chain.h doc: Various validation doc fixups 2021-06-03 13:53:31 +02:00
chainparams.cpp Merge bitcoin/bitcoin#21090: Default to NODE_WITNESS in nLocalServices 2021-07-22 17:36:38 +02:00
chainparams.h net: distinguish default port per network 2021-07-09 11:19:36 +02:00
chainparamsbase.cpp [p2p] remove unused segwitheight=-1 option 2021-07-07 22:13:01 -07:00
chainparamsbase.h
chainparamsseeds.h net: change I2P seeds' ports to 0 2021-07-09 11:19:35 +02:00
checkqueue.h
clientversion.cpp
clientversion.h
coins.cpp refactor: wrap CCoinsViewCursor in unique_ptr 2021-06-17 09:47:08 -04:00
coins.h refactor: wrap CCoinsViewCursor in unique_ptr 2021-06-17 09:47:08 -04:00
compat.h
compressor.cpp refactor: Use CPubKey vector constructor where possible 2021-05-04 06:53:32 +02:00
compressor.h
core_io.h rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-23 10:51:43 -04:00
core_memusage.h
core_read.cpp Add support for SIGHASH_DEFAULT in RPCs, and make it default 2021-06-12 12:38:17 -07:00
core_write.cpp rpc: deprecate addresses and reqSigs from rpc outputs 2021-03-23 10:51:43 -04:00
cuckoocache.h
dbwrapper.cpp refactor: Use only one temporary buffer in CreateObfuscateKey 2021-05-04 06:53:37 +02:00
dbwrapper.h
deploymentinfo.cpp deploymentinfo: Add DeploymentName() 2021-06-30 08:19:12 +10:00
deploymentinfo.h deploymentinfo: Add DeploymentName() 2021-06-30 08:19:12 +10:00
deploymentstatus.cpp scripted-diff: rename versionbitscache 2021-06-30 08:19:12 +10:00
deploymentstatus.h Use DeploymentEnabled to hide VB deployments 2021-07-01 20:20:52 +02:00
dummywallet.cpp tests: Skip SQLite fsyncs while testing 2021-04-12 19:29:03 -04:00
external_signer.cpp refactor: make ExternalSigner NetworkArg() and m_chain private 2021-06-16 10:48:58 +02:00
external_signer.h refactor: make ExternalSigner NetworkArg() and m_chain private 2021-06-16 10:48:58 +02:00
flatfile.cpp
flatfile.h
fs.cpp
fs.h
hash.cpp Use C++17 [[fallthrough]] attribute, and drop -Wno-implicit-fallthrough 2021-07-05 08:59:38 +03:00
hash.h Squashed 'src/secp256k1/' changes from 3967d96bf1..efad3506a8 2021-04-23 11:35:15 -07:00
httprpc.cpp Drop JSONRPCRequest constructors after #21366 2021-04-07 04:53:26 -04:00
httprpc.h refactor: replace util::Ref by std::any (C++17) 2021-03-29 23:29:42 +02:00
httpserver.cpp refactor: Make httpserver work queue a unique_ptr 2021-06-28 11:47:05 +02:00
httpserver.h
i2p.cpp net: do not connect to I2P hosts on port!=0 2021-07-09 11:19:37 +02:00
i2p.h i2p: use pointers to Sock to accommodate mocking 2021-03-16 13:59:18 +01:00
indirectmap.h
init.cpp Merge bitcoin/bitcoin#21090: Default to NODE_WITNESS in nLocalServices 2021-07-22 17:36:38 +02:00
init.h init: remove straggling boost thread_group code 2021-07-12 21:46:59 +08:00
key.cpp Add CKey::SignSchnorr function for BIP 340/341 signing 2021-06-12 12:25:28 -07:00
key.h Add CKey::SignSchnorr function for BIP 340/341 signing 2021-06-12 12:25:28 -07:00
key_io.cpp Separate WitnessV1Taproot variant in CTxDestination 2021-05-24 12:14:16 -07:00
key_io.h
logging.cpp multiprocess: Add Ipc interface implementation 2021-04-23 03:02:50 -05:00
logging.h multiprocess: Add Ipc interface implementation 2021-04-23 03:02:50 -05:00
Makefile.am Merge bitcoin/bitcoin#22218: multiprocess: Add ipc::Context and ipc::capnp::Context structs 2021-07-22 08:26:30 +02:00
Makefile.bench.include bench: add peer eviction protection benchmarks 2021-07-08 12:28:23 +02:00
Makefile.crc32c.include
Makefile.leveldb.include Use C++17 [[fallthrough]] attribute, and drop -Wno-implicit-fallthrough 2021-07-05 08:59:38 +03:00
Makefile.qt.include qt, refactor: Move InitExecutor class into its own module 2021-07-14 21:54:32 +03:00
Makefile.qt_locale.include
Makefile.qttest.include test: remove qt byteswap compattests 2021-03-29 11:12:26 +08:00
Makefile.test.include fuzz: fix fuzz binary linking order 2021-06-16 10:41:24 +02:00
Makefile.test_fuzz.include
Makefile.test_util.include fuzz: [refactor] Use IsValidFlagCombination in signature_checker fuzz target 2021-03-30 10:42:45 +02:00
mapport.cpp refactor: Use appropriate thread constructor 2021-04-29 18:39:01 +03:00
mapport.h
memusage.h
merkleblock.cpp
merkleblock.h
miner.cpp [refactor] Move ComputeBlockVersion into VersionBitsCache 2021-06-30 08:19:12 +10:00
miner.h miner: Pass in chainman to RegenerateCommitments 2021-05-27 13:50:11 -04:00
net.cpp Merge bitcoin/bitcoin#22096: p2p: AddrFetch - don't disconnect on self-announcements 2021-07-20 20:27:21 +08:00
net.h Merge bitcoin/bitcoin#22096: p2p: AddrFetch - don't disconnect on self-announcements 2021-07-20 20:27:21 +08:00
net_permissions.cpp p2p: pass strings to NetPermissions::TryParse functions by const ref 2021-05-19 19:41:05 +02:00
net_permissions.h Rate limit the processing of incoming addr messages 2021-07-15 12:52:38 -07:00
net_processing.cpp Merge bitcoin/bitcoin#21090: Default to NODE_WITNESS in nLocalServices 2021-07-22 17:36:38 +02:00
net_processing.h Add logging and addr rate limiting statistics 2021-07-15 13:03:20 -07:00
net_types.h
netaddress.cpp Merge bitcoin/bitcoin#22179: Torv2 removal followups 2021-07-08 17:20:35 +02:00
netaddress.h Merge bitcoin/bitcoin#22211: net: relay I2P addresses even if not reachable (by us) 2021-07-15 16:53:34 +02:00
netbase.cpp Merge #21387: p2p: Refactor sock to add I2P fuzz and unit tests 2021-03-30 17:41:13 +02:00
netbase.h doc: fixup -Wdocumentation issues 2021-04-06 14:50:17 +08:00
netmessagemaker.h
noui.cpp
noui.h
outputtype.cpp Disallow bech32m addresses for legacy wallet things 2021-06-22 21:57:04 -04:00
outputtype.h Disallow bech32m addresses for legacy wallet things 2021-06-22 21:57:04 -04:00
pow.cpp
pow.h
prevector.h
protocol.cpp refactor: Replace memset calls with array initialization 2021-05-13 12:42:21 +01:00
protocol.h Add roundtrip fuzz tests for CAddress serialization 2021-05-24 18:06:35 -07:00
psbt.cpp Make GetInputUTXO safer: verify non-witness UTXO match 2021-06-12 12:25:28 -07:00
psbt.h Construct and use PrecomputedTransactionData in PSBT signing 2021-06-12 12:25:28 -07:00
pubkey.cpp Add CKey::SignSchnorr function for BIP 340/341 signing 2021-06-12 12:25:28 -07:00
pubkey.h Add CKey::SignSchnorr function for BIP 340/341 signing 2021-06-12 12:25:28 -07:00
random.cpp refactor: Replace &foo[0] with foo.data() 2021-05-04 06:55:31 +02:00
random.h
randomenv.cpp rand: only try and use freeifaddrs if available 2021-03-29 11:08:29 +08:00
randomenv.h
rest.cpp Use C++17 [[fallthrough]] attribute, and drop -Wno-implicit-fallthrough 2021-07-05 08:59:38 +03:00
reverse_iterator.h
scheduler.cpp test: Fix off-by-one in mockscheduler test RPC 2021-05-14 12:49:16 +02:00
scheduler.h
serialize.h refactor: Switch serialize to uint8_t (1/n) 2021-05-31 14:56:17 +02:00
shutdown.cpp move-only: Move AbortNode to shutdown 2021-04-04 18:08:36 +02:00
shutdown.h move-only: Move AbortNode to shutdown 2021-04-04 18:08:36 +02:00
signet.cpp Merge #21330: Deal with missing data in signature hashes more consistently 2021-04-13 10:24:31 +08:00
signet.h
span.h
streams.h streams: Accept URef obj for VectorReader unserialize 2021-05-05 20:19:03 +02:00
sync.cpp
sync.h refactor: Remove negative lock annotations from globals 2021-04-05 08:42:15 +02:00
threadinterrupt.cpp
threadinterrupt.h
threadsafety.h
timedata.cpp
timedata.h
tinyformat.h Use C++17 [[fallthrough]] attribute, and drop -Wno-implicit-fallthrough 2021-07-05 08:59:38 +03:00
torcontrol.cpp torcontrol: Resolve Tor control plane address 2021-06-27 19:27:25 +02:00
torcontrol.h
txdb.cpp doc: add comment about CCoinsViewDBCursor constructor 2021-06-18 14:15:39 -04:00
txdb.h move-only(ish): don't expose CCoinsViewDBCursor 2021-06-18 14:14:15 -04:00
txmempool.cpp scripted-diff: tree-wide: Remove all review-only assertions 2021-06-10 15:05:24 -04:00
txmempool.h [refactor] comment/naming improvements 2021-06-02 09:40:40 +01:00
txorphanage.cpp
txorphanage.h doc: Fix typos from codespell lint 2021-04-07 19:26:25 +01:00
txrequest.cpp doc: Fix typos from codespell lint 2021-04-07 19:26:25 +01:00
txrequest.h
uint256.cpp
uint256.h Make XOnlyPubKey act like byte container 2021-05-24 12:14:16 -07:00
undo.h
validation.cpp Merge bitcoin/bitcoin#22383: rpc: Prefer to use txindex if available for GetTransaction 2021-07-22 20:13:43 +02:00
validation.h Merge bitcoin/bitcoin#22383: rpc: Prefer to use txindex if available for GetTransaction 2021-07-22 20:13:43 +02:00
validationinterface.cpp
validationinterface.h
version.h
versionbits.cpp [refactor] Move ComputeBlockVersion into VersionBitsCache 2021-06-30 08:19:12 +10:00
versionbits.h [refactor] Move ComputeBlockVersion into VersionBitsCache 2021-06-30 08:19:12 +10:00
walletinitinterface.h
warnings.cpp
warnings.h