From 6f88c28c44a0b2957ecf20eac7a2853c9b6ae0ae Mon Sep 17 00:00:00 2001 From: Glenn Strauss Date: Sat, 10 Jun 2017 13:22:48 -0400 Subject: [PATCH] [core] fix compiler warnings on Mac OS X (thx wardw) --- SConstruct | 3 ++- configure.ac | 5 ++++- src/CMakeLists.txt | 6 +++++- src/fdevent.c | 2 ++ src/rand.c | 3 +++ 5 files changed, 16 insertions(+), 3 deletions(-) diff --git a/SConstruct b/SConstruct index 762fad1b..abd55667 100644 --- a/SConstruct +++ b/SConstruct @@ -224,7 +224,8 @@ if 1: getuid select signal pathconf madvise prctl\ writev sigaction sendfile64 send_file kqueue port_create localtime_r posix_fadvise issetugid inet_pton \ memset_s explicit_bzero clock_gettime pipe2 \ - getentropy arc4random_buf jrand48 srandom getloadavg')) + arc4random_buf jrand48 srandom getloadavg')) + checkFunc(autoconf, 'getentropy', 'sys/random.h') checkFunc(autoconf, 'getrandom', 'linux/random.h') checkTypes(autoconf, Split('pid_t size_t off_t')) diff --git a/configure.ac b/configure.ac index 57e7aa5c..8c37810f 100644 --- a/configure.ac +++ b/configure.ac @@ -863,7 +863,10 @@ AC_CHECK_FUNCS([dup2 getcwd inet_ntoa inet_ntop inet_pton issetugid memset mmap getuid select signal pathconf madvise posix_fadvise posix_madvise \ writev sigaction sendfile64 send_file kqueue port_create localtime_r gmtime_r \ memset_s explicit_bzero clock_gettime pipe2 \ - getentropy arc4random_buf jrand48 srandom getloadavg]) + arc4random_buf jrand48 srandom getloadavg]) +AC_CHECK_HEADERS([sys/random.h],[ + AC_CHECK_FUNC([getentropy], AC_DEFINE([HAVE_GETENTROPY], [1], [getentropy])) +]) AC_CHECK_HEADERS([linux/random.h],[ AC_CHECK_FUNC([getrandom], AC_DEFINE([HAVE_GETRANDOM], [1], [getrandom])) ]) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index de14e0e0..0cf0d0b1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -122,6 +122,11 @@ set(CMAKE_EXTRA_INCLUDE_FILES sys/socket.h) check_type_size(socklen_t HAVE_SOCKLEN_T) set(CMAKE_EXTRA_INCLUDE_FILES) +check_include_files(sys/random.h HAVE_SYS_RANDOM_H) +set(CMAKE_EXTRA_INCLUDE_FILES sys/random.h) +check_function_exists(getentropy HAVE_GETENTROPY) +set(CMAKE_EXTRA_INCLUDE_FILES) + check_include_files(linux/random.h HAVE_LINUX_RANDOM_H) set(CMAKE_EXTRA_INCLUDE_FILES linux/random.h) check_function_exists(getrandom HAVE_GETRANDOM) @@ -134,7 +139,6 @@ check_function_exists(arc4random_buf HAVE_ARC4RANDOM_BUF) check_function_exists(chroot HAVE_CHROOT) check_function_exists(epoll_ctl HAVE_EPOLL_CTL) check_function_exists(fork HAVE_FORK) -check_function_exists(getentropy HAVE_GETENTROPY) check_function_exists(getloadavg HAVE_GETLOADAVG) check_function_exists(getrlimit HAVE_GETRLIMIT) check_function_exists(getuid HAVE_GETUID) diff --git a/src/fdevent.c b/src/fdevent.c index 9e1ad458..626ae27d 100644 --- a/src/fdevent.c +++ b/src/fdevent.c @@ -13,7 +13,9 @@ #include #include +#ifdef SOCK_CLOEXEC static int use_sock_cloexec; +#endif fdevents *fdevent_init(server *srv, size_t maxfds, int type) { fdevents *ev; diff --git a/src/rand.c b/src/rand.c index fc79ea86..1742ef13 100644 --- a/src/rand.c +++ b/src/rand.c @@ -21,6 +21,9 @@ #include /* OPENSSL_VERSION_NUMBER */ #include #endif +#ifdef HAVE_GETENTROPY +#include +#endif #ifdef HAVE_LINUX_RANDOM_H #include #include -- 2.11.4.GIT