aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure2
-rw-r--r--util-src/crand.c6
2 files changed, 7 insertions, 1 deletions
diff --git a/configure b/configure
index c26f78ed..13f7eff3 100755
--- a/configure
+++ b/configure
@@ -528,6 +528,8 @@ OPENSSL_LIBS="-l$OPENSSL_LIB"
if [ "$PRNG" = "OPENSSL" ]; then
PRNGLIBS=$OPENSSL_LIBS
+elif [ "$PRNG" = "ARC4RANDOM" -a "$(uname)" = "Linux" ]; then
+ PRNGLIBS="-lbsd"
fi
# Write config
diff --git a/util-src/crand.c b/util-src/crand.c
index ab2f4ad1..cdc3c211 100644
--- a/util-src/crand.c
+++ b/util-src/crand.c
@@ -54,7 +54,11 @@ int getrandom(void *buf, size_t buflen, unsigned int flags) {
#elif defined(WITH_OPENSSL)
#include <openssl/rand.h>
-#elif ! defined(WITH_ARC4RANDOM)
+#elif defined(WITH_ARC4RANDOM)
+#ifdef __linux__
+#include <bsd/stdlib.h>
+#endif
+#else
#error util.crand compiled without a random source
#endif