Index: third_party/afl/src/docs/notes_for_asan.txt |
diff --git a/third_party/afl/src/docs/notes_for_asan.txt b/third_party/afl/src/docs/notes_for_asan.txt |
index 649bb29a314d698e463eac8420ae2a44e3bb36a2..0f5bdca95b443f2d34610a546ab1a1c081350b53 100644 |
--- a/third_party/afl/src/docs/notes_for_asan.txt |
+++ b/third_party/afl/src/docs/notes_for_asan.txt |
@@ -31,9 +31,16 @@ Note that ASAN is incompatible with -static, so be mindful of that. |
(You can also use AFL_USE_MSAN=1 to enable MSAN instead.) |
+Note that both ASAN and MSAN are incompatible with -D_FORTIFY_SOURCE (enabled |
+by default in some distros) and with AFL_HARDEN. Attempting to combine these |
+settings can lead to false negatives in ASAN and false positives in MSAN. This |
+is not AFL-specific. |
+ |
There is also the option of generating a corpus using a non-ASAN binary, and |
then feeding it to an ASAN-instrumented one to check for bugs. This is faster, |
-and can give you somewhat comparable results. |
+and can give you somewhat comparable results. You can also try using |
+libdislocator (see libdislocator/README.dislocator in the parent directory) as a |
+lightweight and hassle-free (but less thorough) alternative. |
2) Long version |
--------------- |