8 Commits

Author SHA1 Message Date
vanhauser-thc
3e84d6a2ae afl++ -> AFL++ 2023-04-27 11:49:00 +02:00
Roman M. Iudichev
069e61dfc6
Exit on time (#904)
* Variable AFL_EXIT_ON_TIME description has been added.
Variables AFL_EXIT_ON_TIME and afl_exit_on_time has been added.
afl->exit_on_time variable initialization has been added.
The asignment of a value to the afl->afl_env.afl_exit_on_time variable from
environment variables has been added.
Code to exit on timeout if new path not found has been added.

* Type of afl_exit_on_time variable has been changed.
Variable exit_on_time has been added to the afl_state_t structure.

* Command `export AFL_EXIT_WHEN_DONE=1` has been added.

* Millisecond to second conversion has been added.
Call get_cur_time() has been added.

* Revert to using the saved current time value.

* Useless check has been removed.
2021-05-07 17:32:17 +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
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
van Hauser
06264df168 rename whitelist -> instrumentlist 2020-06-30 17:28:21 +02:00
van Hauser
39b7f48870 performance doc enhancements 2019-10-23 17:01:05 +02:00
van Hauser
f4a74a3405 added test/test-performance.sh 2019-10-18 10:10:47 +02:00