about summary refs log tree commit diff
path: root/utils/afl_untracer
diff options
context:
space:
mode:
authorDavid CARLIER <devnexen@gmail.com>2022-01-18 18:53:18 +0000
committerDavid CARLIER <devnexen@gmail.com>2022-01-18 18:53:18 +0000
commit56ce081ac7a247b64e0ed77c0353d11fd279dc9f (patch)
treefc856afffaf2e1bb46e009b624c6478d053d7781 /utils/afl_untracer
parent861bd5e04b5030b3fc345c1022c46e92eb52a312 (diff)
downloadafl++-56ce081ac7a247b64e0ed77c0353d11fd279dc9f.tar.gz
afl-untracer, disable ASLR on FreeBSD.
Diffstat (limited to 'utils/afl_untracer')
-rw-r--r--utils/afl_untracer/afl-untracer.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/utils/afl_untracer/afl-untracer.c b/utils/afl_untracer/afl-untracer.c
index d2cb4bcf..fd4c3b8c 100644
--- a/utils/afl_untracer/afl-untracer.c
+++ b/utils/afl_untracer/afl-untracer.c
@@ -65,6 +65,7 @@
 #elif defined(__FreeBSD__)
   #include <sys/sysctl.h>
   #include <sys/user.h>
+  #include <sys/procctl.h>
 #else
   #error "Unsupported platform"
 #endif
@@ -685,6 +686,9 @@ int main(int argc, char *argv[]) {
 
 #if defined(__linux__)
   (void)personality(ADDR_NO_RANDOMIZE);  // disable ASLR
+#elif defined(__FreeBSD__) && __FreeBSD_version >= 1200000
+  int no_randomize = PROC_ASLR_FORCE_DISABLE;
+  (void)procctl(P_PID, 0, PROC_ASLR_CTL, &no_randomize);
 #endif
 
   pid = getpid();