about summary refs log tree commit diff
path: root/src/afl-fuzz-stats.c
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2021-08-12 14:32:44 +0200
committervanhauser-thc <vh@thc.org>2021-08-12 14:32:44 +0200
commitc775f40ebf935ec85619fa3903af7a20a38baf98 (patch)
tree6ef9d3b6151a504686ca07d8a6e76c0a7e0e5c8e /src/afl-fuzz-stats.c
parent3c0e8528e3430afef8f1593595917373f0d04c8b (diff)
downloadafl++-c775f40ebf935ec85619fa3903af7a20a38baf98.tar.gz
AFL_IGNORE_PROBLEMS + library checks and documentation
Diffstat (limited to 'src/afl-fuzz-stats.c')
-rw-r--r--src/afl-fuzz-stats.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/afl-fuzz-stats.c b/src/afl-fuzz-stats.c
index ead65b1d..a9deb22d 100644
--- a/src/afl-fuzz-stats.c
+++ b/src/afl-fuzz-stats.c
@@ -534,6 +534,20 @@ void show_stats(afl_state_t *afl) {
   t_bytes = count_non_255_bytes(afl, afl->virgin_bits);
   t_byte_ratio = ((double)t_bytes * 100) / afl->fsrv.real_map_size;
 
+  if (unlikely(t_bytes > afl->fsrv.real_map_size)) {
+
+    if (unlikely(!afl->afl_env.afl_ignore_problems)) {
+
+      FATAL(
+          "Incorrect fuzzing setup detected. Your target seems to have loaded "
+          "incorrectly instrumented shared libraries. If you use LTO mode "
+          "please see instrumentation/README.lto.md. To ignore this problem "
+          "and continue fuzzing just set 'AFL_IGNORE_PROBLEMS=1'.\n");
+
+    }
+
+  }
+
   if (likely(t_bytes) && unlikely(afl->var_byte_count)) {
 
     stab_ratio = 100 - (((double)afl->var_byte_count * 100) / t_bytes);