diff options
| author | Wladimir J. van der Laan <[email protected]> | 2017-05-22 16:53:18 +0200 |
|---|---|---|
| committer | Wladimir J. van der Laan <[email protected]> | 2017-05-22 16:56:58 +0200 |
| commit | 217b416c727aaaaad939203b845a96fd638ded1e (patch) | |
| tree | 9795a4a2f9c5c547daec92baeb3bf9198c2df8aa /doc | |
| parent | Merge #10424: Populate services in GetLocalAddress (diff) | |
| parent | [test] Speed up fuzzing by ~200x when using afl-fuzz (diff) | |
| download | discoin-217b416c727aaaaad939203b845a96fd638ded1e.tar.xz discoin-217b416c727aaaaad939203b845a96fd638ded1e.zip | |
Merge #10415: [tests] Speed up fuzzing by ~200x when using afl-fuzz
693247b [test] Speed up fuzzing by ~200x when using afl-fuzz (practicalswift)
Tree-SHA512: 95922fc2616b8cb00dd531ed1140a52bbda4e04292dd8c1c60a8f49dbf6ccb797a18b61180b3fb68d695456b478a1f5ae7fda47e8ecee41dd65555487aef40a3
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/fuzzing.md | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/doc/fuzzing.md b/doc/fuzzing.md index bf3ad1786..5dedcb51c 100644 --- a/doc/fuzzing.md +++ b/doc/fuzzing.md @@ -32,6 +32,13 @@ We disable ccache because we don't want to pollute the ccache with instrumented objects, and similarly don't want to use non-instrumented cached objects linked in. +The fuzzing can be sped up significantly (~200x) by using `afl-clang-fast` and +`afl-clang-fast++` in place of `afl-gcc` and `afl-g++` when compiling. When +compiling using `afl-clang-fast`/`afl-clang-fast++` the resulting +`test_bitcoin_fuzzy` binary will be instrumented in such a way that the AFL +features "persistent mode" and "deferred forkserver" can be used. See +https://github.com/mcarpenter/afl/tree/master/llvm_mode for details. + Preparing fuzzing ------------------ @@ -63,4 +70,3 @@ $AFLPATH/afl-fuzz -i ${AFLIN} -o ${AFLOUT} -m52 -- test/test_bitcoin_fuzzy You may have to change a few kernel parameters to test optimally - `afl-fuzz` will print an error and suggestion if so. - |