about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDavid Carlier <devnexen@gmail.com>2020-07-03 15:21:33 +0100
committerDavid Carlier <devnexen@gmail.com>2020-07-03 15:21:33 +0100
commite6d4d29af559142062476ad4c7c243c5f1769fd9 (patch)
tree81aba2c56cb086c3e22b0f0392dad1e451446e34
parent139665c01dce7b85941d6e1b61aaebd06e316cba (diff)
downloadafl++-e6d4d29af559142062476ad4c7c243c5f1769fd9.tar.gz
llvm mode shared segment fix for FreeBSD.
MAP_EXCL|MAP_FIXED is a (genuine) equivalent to Linux's MAP_FIXED_NOREPLACE.
-rw-r--r--llvm_mode/afl-llvm-rt.o.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm_mode/afl-llvm-rt.o.c b/llvm_mode/afl-llvm-rt.o.c
index f81d13ee..9db43e35 100644
--- a/llvm_mode/afl-llvm-rt.o.c
+++ b/llvm_mode/afl-llvm-rt.o.c
@@ -53,7 +53,11 @@
 #define CONST_PRIO 5
 
 #ifndef MAP_FIXED_NOREPLACE
-  #define MAP_FIXED_NOREPLACE MAP_FIXED
+# ifdef MAP_EXCL
+   #define MAP_FIXED_NOREPLACE MAP_EXCL|MAP_FIXED
+#else
+   #define MAP_FIXED_NOREPLACE MAP_FIXED
+# endif
 #endif
 
 #include <sys/mman.h>