20 Commits

Author SHA1 Message Date
hexcoder
949f075247
revert condition on llvm-config.h (it did not work) 2020-12-24 12:08:01 +01:00
hexcoder
895d0778b6
fix conditional include 2020-12-24 11:40:02 +01:00
hexcoder
dbdb95bc23
use positive logic to be future safe 2020-12-24 10:46:59 +01:00
van Hauser
ea9db86bb8 mem error fix 2020-12-18 10:20:43 +01:00
hexcoder-
1825e5f313 typo 2020-12-11 17:01:46 +01:00
van Hauser
2bf68a0bf4 fix MMAP 2020-12-11 11:19:26 +01:00
van Hauser
39a4fac941 better examples 2020-12-09 11:07:14 +01:00
hexcoder-
9534bb87b1 fix some copmpiler warnings for USEMMAP 2020-12-08 23:26:28 +01:00
hexcoder-
2b543a64af small fixes 2020-12-08 22:12:05 +01:00
van Hauser
6e61b2345c more reporting on errors 2020-12-08 20:33:41 +01:00
van Hauser
e32b7eeb83 fixed child not killed with -c 2020-11-19 16:14:19 +01:00
Dominik Maier
f80f62f14b renamed env var to AFL_DEBUG_CHILD 2020-11-18 03:02:13 +01:00
hexcoder-
3ac953ec33 typo 2020-11-14 20:09:33 +01:00
hexcoder-
4a4c14c9a9 more fixes, leaks and compile errors 2020-11-12 23:47:49 +01:00
van Hauser
44c0dc6d96 fix expand havoc 2020-09-18 12:19:27 +02:00
David CARLIER
3abace4f54
Haiku build fix. (#556) 2020-09-13 16:58:06 +02:00
van Hauser
862b6d0382 fix for afl-compiler-rt to only send dictionary data if there is some 2020-09-11 08:56:28 +02:00
van Hauser
ab744abc4b code-format 2020-09-08 17:54:01 +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
996986bed5 first batch of changes 2020-09-05 12:11:48 +02:00