308 Commits

Author SHA1 Message Date
van Hauser
aac0ab8c67 travis test 2020-10-24 17:57:05 +02:00
vanhauser-thc
e5c2779d56 symbolize=1 for travis 2020-10-24 12:16:30 +02:00
van Hauser
56ac3fcdc5
configurable testcache with malloc (#581)
* cache item number to cache memory size

* reload testcase if trimming changed the size

* fix splicing selection

* slim splicing

* import sync fix

* write testcache stats to fuzzer_stats

* fix new seed selection algo

* malloc+read instead of mmap

* fix

* testcache is configurable now and no reference counts

* fixes compilation, test script

* fixes

* switch TEST_CC to afl-cc in makefile

* code format

* fix

* fix crash

* fix crash

* fix env help output

* remove unnecessary pointer resets

* fix endless loop bug

* actually use the cache if set

* one more fix

* increase default cache entries, add default cache size value to config.h

Co-authored-by: hexcoder- <heiko@hexco.de>
2020-10-14 15:30:30 +02:00
van Hauser
5427f7ca98 fix tests for sync mode 2020-10-12 05:02:11 +02:00
van Hauser
231420775f fix test-performance.sh 2020-10-06 19:49:48 +02:00
van Hauser
543765bc0d fix unittests 2020-09-10 16:41:40 +02:00
Alexandre Oliva
9544b3dbf2 rewrite gcc plugin
When we started using AFL, it did not have an integrated GCC plugin.
There was one proposed by Austin Seipp, but for various reasons we
ended up using some of its infrastructure (runtime and wrapper), but
writing the GCC plugin proper from scratch.

With AFL++'s renewed interest in a GCC plugin, we rebased ours, with
some features that are or were missing in the one that was integrated:

* efficient, fully-functional inline and out-of-line instrumentation

Inline instrumentation was work in progress in the original plugin.
Controlled by AFL_GCC_OUT_OF_LINE.

* reproducible instrumentation

Obey -frandom-seed for pseudorandom number generation.

* licensing clarity and strict compliance

GPLv3+ for the plugin, that uses GCC internals; add a copy of the
license, as required.

* allow/deny list support

Copied and adjusted from the LLVM plugin implementation.

* neverZero support

Not as compact as the asm-wrapper version, but likely more efficient.
Both are quite thread-unsafe, with different caveats.
Controlled with AFL_GCC_SKIP_NEVERZERO.
2020-09-08 14:55:19 +02:00
vanhauser-thc
e30b2c6af6 final changes for pre-3.0 2020-09-05 13:18:28 +02:00
Dominik Maier
7470b475a9
Reworked maybe_grow to take a single ptr, renamed to afl_realloc (#505)
* maybe_grow takes a single ptr

* fixed use_deflate

* reworked maybe_grow_bufsize

* helper to access underlying buf

* remove redundant realloc_block

* code format

* fixes

* added unit tests

* renamed maybe_grow to afl_realloc

* BUF_PARAMS -> AFL_BUF_PARAM
2020-08-18 00:50:52 +02:00
Dominik Maier
c3a6e7e870 testcases indicate count 2020-08-14 00:20:04 +02:00
van Hauser
c270646722 fix wrong incomplete 2020-08-10 09:37:32 +02:00
hexcoder-
33141cf8a3 tests: cleanup core files, more time for llvm cmplog 2020-08-07 20:22:13 +02:00
hexcoder-
8551d8e48e Merge branch 'dev' of https://github.com/AFLplusplus/AFLplusplus into dev 2020-08-07 19:53:32 +02:00
hexcoder-
32558bc807 minor test fixes for Raspberry Pi Linux 64-bit 2020-08-07 19:41:39 +02:00
Dominik Maier
fd9a7e719d fixed wextra 2020-08-07 17:20:24 +02:00
hexcoder-
673ace2a4b test-llvm.sh: clear file errors after test 2020-08-07 16:34:10 +02:00
van Hauser
4a859aff70 travis fixes 2020-08-05 10:25:53 +02:00
van Hauser
f6c89ec3a9 workaround travis 2020-08-05 01:29:05 +02:00
Dominik Maier
79f873a597 posix compatible sourcing 2020-08-04 21:57:56 +02:00
Dominik Maier
8850e1a5bf chmod for testcase 2020-08-04 21:47:21 +02:00
Dominik Maier
194188fe56 split up testcases 2020-08-04 21:33:29 +02:00
van Hauser
cc74efa35e fix test for nixos 2020-08-04 15:10:20 +02:00
van Hauser
409e4ae945 fix expand havoc for ..._only modes 2020-08-03 13:13:32 +02:00
Andrea Fioraldi
9d82c3cf5e test for llvm cmplog 2020-08-03 11:30:34 +02:00
van Hauser
8ea19d4266 easier float test 2020-07-31 19:37:05 +02:00
van Hauser
b7bcc50c61 reenable cpu tests in test.sh 2020-07-31 19:09:04 +02:00
van Hauser
25ad992c62 fix travis 2020-07-31 18:26:18 +02:00
van Hauser
486e5365d9 fix float splitting if not on a tty 2020-07-30 18:01:18 +02:00
van Hauser
ea9ba53cdb fix oob reads, code-format 2020-07-30 17:09:22 +02:00
hexcoder-
cbe8f0a9d0 cleanup messages in floating point test case 2020-07-30 17:00:10 +02:00
van Hauser
da8b464e67 fix test.sh 2020-07-30 16:07:47 +02:00
hexcoder-
5ce55d87ec make travis green again (floating point testcase), but all laf testcases need AFL_DEBUG=1 (that is another bug) 2020-07-30 13:46:52 +02:00
van Hauser
16e362d2b9 add last 60s exec/s stat 2020-07-26 15:55:03 +02:00
van Hauser
a879f72131 fix 2020-07-25 17:38:40 +02:00
van Hauser
131df8bec9 try to fix travis 2020-07-25 16:39:36 +02:00
hexcoder-
c5963f707c make fuzzing of test-floatingpoint reproducible 2020-07-14 23:42:47 +02:00
van Hauser
383b280531 added frida gum extension 2020-07-14 23:26:11 +02:00
hexcoder-
95276f7da6 test float splitting increase timeout to 30 seconds 2020-07-13 23:17:21 +02:00
hexcoder-
6b79e1f76d test.sh: FP fuzzing: check for crashes 2020-07-13 11:27:08 +02:00
hexcoder-
5a26656ea1 add floating point test cases. One for fuzzing (test-floatingpoint.c) and one for testing all cases with the instrumented program (test-fp_cases.c) 2020-07-13 10:35:43 +02:00
van Hauser
06264df168 rename whitelist -> instrumentlist 2020-06-30 17:28:21 +02:00
Dominik Maier
3a62bb68e0 updated unicornafl 2020-06-25 17:13:16 +02:00
van Hauser
8178f4dfdd remove radamsa, add radamsa custom mutator 2020-06-25 16:51:29 +02:00
van Hauser
49a769ac06 lto whitelist in test.sh 2020-06-23 21:23:10 +02:00
van Hauser
2b450aeb20 fix test.sh 2020-06-23 18:21:50 +02:00
Dominik Maier
aad433e11e Merge branch 'dev' of github.com:vanhauser-thc/AFLplusplus into dev 2020-06-23 15:08:49 +02:00
Dominik Maier
7119bf5d86 Added rand, hash unittests 2020-06-22 21:58:23 +02:00
jonasmollerlarsen
990b234067 Fix when env. PATH contains spaces 2020-06-20 11:50:53 +02:00
hexcoder-
889e54eab8 unit tests: fix stupid compiler warning for gcc 4.8.4 2020-06-16 23:07:33 +02:00
hexcoder-
a14f3c90a8 fix unit tests when exit is called at the end 2020-06-16 22:37:56 +02:00