about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--include/afl-fuzz.h1
-rw-r--r--include/config.h7
-rw-r--r--src/afl-forkserver.c6
3 files changed, 8 insertions, 6 deletions
diff --git a/include/afl-fuzz.h b/include/afl-fuzz.h
index a04402ef..ff0b239c 100644
--- a/include/afl-fuzz.h
+++ b/include/afl-fuzz.h
@@ -73,7 +73,6 @@
 
 #if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
 #include <sys/sysctl.h>
-#define HAVE_ARC4RANDOM 1
 #endif                           /* __APPLE__ || __FreeBSD__ || __OpenBSD__ */
 
 /* For systems that have sched_setaffinity; right now just Linux, but one
diff --git a/include/config.h b/include/config.h
index 1fd478c6..98eb0a38 100644
--- a/include/config.h
+++ b/include/config.h
@@ -371,5 +371,12 @@
 
 // #define IGNORE_FINDS
 
+/* for *BSD: use ARC4RANDOM and save a file descriptor */
+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+ #ifndef HAVE_ARC4RANDOM
+  #define HAVE_ARC4RANDOM 1
+ #endif
+#endif                           /* __APPLE__ || __FreeBSD__ || __OpenBSD__ */
+
 #endif                                                  /* ! _HAVE_CONFIG_H */
 
diff --git a/src/afl-forkserver.c b/src/afl-forkserver.c
index 64b8430d..6c27d0f9 100644
--- a/src/afl-forkserver.c
+++ b/src/afl-forkserver.c
@@ -40,17 +40,13 @@
 #include <sys/wait.h>
 #include <sys/resource.h>
 
-#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__)
-#define HAVE_ARC4RANDOM 1
-#endif                           /* __APPLE__ || __FreeBSD__ || __OpenBSD__ */
-
 /* a program that includes afl-forkserver needs to define these */
 extern u8  uses_asan;
 extern u8 *trace_bits;
 extern s32 forksrv_pid, child_pid, fsrv_ctl_fd, fsrv_st_fd;
 extern s32 out_fd, out_dir_fd,  dev_null_fd; /* initialize these with -1 */
 #ifndef HAVE_ARC4RANDOM
-extern s32 dev_random_fd;
+extern s32 dev_urandom_fd;
 #endif
 extern u32   exec_tmout;
 extern u64   mem_limit;