fanquake
21f781ad79
fs: consistently use fsbridge for {i,o}fstream
...
Part of #20744 , but this can be done now, and will simplify the diff.
2022-01-26 22:08:19 +08:00
Vasil Dimov
6f7c7567c5
fuzz: parse the command line arguments in fuzz tests
...
Retrieve the command line arguments from the fuzzer and save them for
later retrieval by `BasicTestingSetup` so that we gain extra flexibility
of passing any config options on the test command line, e.g.:
```
FUZZ=addrman ./src/test/fuzz/fuzz --checkaddrman=5
```
A fuzz test should call `MakeNoLogFileContext<>()` in its initialize
function in order to invoke the constructor of `BasicTestingSetup`,
which sets `gArgs`.
2022-01-11 11:53:34 +01:00
Vasil Dimov
92a0f7e58d
test: parse the command line arguments in unit tests
...
Retrieve the command line arguments from boost and pass them to
`BasicTestingSetup` so that we gain extra flexibility of passing any
config options on the test command line, e.g.:
```
test_bitcoin -- -printtoconsole=1 -checkaddrman=5
```
2022-01-11 11:53:30 +01:00
practicalswift
3737d35fee
fuzz: Terminate immediately if a fuzzing harness ever tries to perform a DNS lookup (belts and suspenders)
2021-05-21 19:41:43 +00:00
practicalswift
393992b049
fuzz: Terminate immediately if a fuzzing harness ever tries to create a TCP socket (belt and suspenders)
2021-05-20 19:02:37 +00:00
MarcoFalke
fa5cb6b268
fuzz: Add WRITE_ALL_FUZZ_TARGETS_AND_ABORT
2021-05-07 11:01:05 +02:00
MarcoFalke
fae216a73d
scripted-diff: Rename MakeFuzzingContext to MakeNoLogFileContext
...
-BEGIN VERIFY SCRIPT-
# Rename
sed -i -e 's/MakeFuzzingContext/MakeNoLogFileContext/g' $(git grep -l MakeFuzzingContext)
# Bump the copyright of touched files in this scripted diff to avoid touching them again later
./contrib/devtools/copyright_header.py update ./src/test/fuzz/
-END VERIFY SCRIPT-
2021-02-22 10:27:22 +01:00
MarcoFalke
fa4fbec03e
scripted-diff: Rename PROVIDE_MAIN_FUNCTION -> PROVIDE_FUZZ_MAIN_FUNCTION
...
-BEGIN VERIFY SCRIPT-
sed -i -e 's/PROVIDE_MAIN_FUNCTION/PROVIDE_FUZZ_MAIN_FUNCTION/g' $(git grep -l PROVIDE_MAIN_FUNCTION)
-END VERIFY SCRIPT-
2021-02-22 10:27:17 +01:00
Dan Benjamin
56ace907b9
Fix fuzz binary compilation under windows
2021-02-18 17:35:24 -05:00
MarcoFalke
fafca47adc
fuzz: Hide script_assets_test_minimizer
...
Can be reviewed with --ignore-all-space
2021-02-08 10:11:59 +01:00
MarcoFalke
faf7d7418c
fuzz: Avoid extraneous copy of input data, using Span<>
2021-02-03 19:30:14 +01:00
MarcoFalke
44444ba759
fuzz: Link all targets once
2020-12-10 07:15:42 +01:00
MarcoFalke
fae7a1c188
fuzz: Configure check for main function
2020-10-04 17:49:07 +02:00
practicalswift
1087807b2b
tests: Provide main(...) function in fuzzer
2020-06-25 21:03:27 +00:00
practicalswift
6a239e72eb
tests: Don't limit fuzzing inputs to 1 MB for afl-fuzz (now: ∞ ∀ fuzzers)
2020-05-22 15:15:46 +00:00
MarcoFalke
fa488f131f
scripted-diff: Bump copyright headers
...
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-
2020-04-16 13:33:09 -04:00
fanquake
b35567fe0b
test: only declare a main() when fuzzing with AFL
...
libFuzzer will provide a main(). This also fixes a weak linking
issue when fuzzing with libFuzzer on macOS.
2020-01-29 08:18:22 +08:00
MarcoFalke
fa37e0a68b
test: Show debug log on unit test failure
2020-01-02 18:00:05 -05:00
practicalswift
c2f964a674
tests: Remove Cygwin WinMain workaround
2019-10-24 08:07:59 +00:00
practicalswift
db4bd32cc3
tests: Skip unnecessary fuzzer initialisation. Hold ECCVerifyHandle only when needed.
2019-10-24 08:06:38 +00:00
practicalswift
fdef8bbf2f
tests: Allow for using non-default fuzzing initialization
2019-10-23 11:10:10 +00:00
practicalswift
ffa2221256
tests: Pass fuzzing inputs as constant references
2019-10-07 08:48:35 +00:00
MarcoFalke
2ca632e5b4
test: Build fuzz targets into seperate executables
2019-01-29 19:03:06 -05:00