]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
pullup:
authorAndreas Gustafsson <source@isc.org>
Thu, 14 Jun 2001 13:37:47 +0000 (13:37 +0000)
committerAndreas Gustafsson <source@isc.org>
Thu, 14 Jun 2001 13:37:47 +0000 (13:37 +0000)
 703.   [port]          sys/select.h is needed on older platforms. [RT #695]

CHANGES
configure.in
lib/isc/include/isc/platform.h.in
lib/isc/unix/entropy.c
lib/isc/unix/socket_p.h

diff --git a/CHANGES b/CHANGES
index 2a98abdb5ed41c132297eb5de9cd26fb8e57fc4e..277dc250dfd74e2f8af645b6620b7da4c44aaf22 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -35,6 +35,8 @@
 
  704.  [port]          RLIMIT_NOFILE is not available on all platforms.
 
+ 703.  [port]          sys/select.h is needed on older platforms. [RT #695]
+
        --- 9.1.3rc1 released ---
 
  831.  [bug]           The configure script tried to determine
index ed94b096228d046b19f08a4412c3bb604cc559fd..c96581be13e86c31f86c63814f20f5f32facf0a1 100644 (file)
@@ -18,7 +18,7 @@ AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
 esyscmd([sed "s/^/# /" COPYRIGHT])dnl
 AC_DIVERT_POP()dnl
 
-AC_REVISION($Revision: 1.205.2.8 $)
+AC_REVISION($Revision: 1.205.2.9 $)
 
 AC_INIT(lib/dns/name.c)
 AC_PREREQ(2.13)
@@ -301,13 +301,51 @@ AC_C_BIGENDIAN
 
 AC_HEADER_STDC
 
-AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/sockio.h)
+AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/sockio.h sys/select.h)
 
 AC_C_CONST
 AC_C_INLINE
 AC_TYPE_SIZE_T
 AC_HEADER_TIME
 
+#
+# check if we need to #include sys/select.h explicitly
+#
+case $ac_cv_header_unistd_h in
+yes)
+AC_MSG_CHECKING(if unistd.h defines fd_set)
+AC_TRY_COMPILE([
+#include <unistd.h>],
+[fd_set read_set; return (0);],
+       [AC_MSG_RESULT(yes)
+        ISC_PLATFORM_NEEDSYSSELECTH="#undef ISC_PLATFORM_NEEDSYSSELECTH"
+        LWRES_PLATFORM_NEEDSYSSELECTH="#undef LWRES_PLATFORM_NEEDSYSSELECTH"],
+       [AC_MSG_RESULT(no)
+       case ac_cv_header_sys_select_h in
+       yes)
+         ISC_PLATFORM_NEEDSYSSELECTH="#define ISC_PLATFORM_NEEDSYSSELECTH 1"
+        LWRES_PLATFORM_NEEDSYSSELECTH="#define LWRES_PLATFORM_NEEDSYSSELECTH 1"
+               ;;
+       no)
+               AC_MSG_ERROR(["need either working unistd.h or sys/select.h"])
+               ;;
+       esac
+       ])
+       ;;
+no)
+       case ac_cv_header_sys_select_h in
+       yes)
+             ISC_PLATFORM_NEEDSYSSELECTH="#define ISC_PLATFORM_NEEDSYSSELECTH 1"
+            LWRES_PLATFORM_NEEDSYSSELECTH="#define LWRES_PLATFORM_NEEDSYSSELECTH 1"
+               ;;
+       no)
+               AC_MSG_ERROR(["need either unistd.h or sys/select.h"])
+               ;;
+       esac
+       ;;
+esac
+AC_SUBST(ISC_PLATFORM_NEEDSYSSELECTH)
+AC_SUBST(LWRES_PLATFORM_NEEDSYSSELECTH)
 #
 # Begin pthreads checking.
 #
index 0b30ffa157dce021cf316ff9ae78b28dc5accf7d..767c4c23e5e64e5bcdf72344f20dd5650c2dcd5e 100644 (file)
@@ -15,7 +15,7 @@
  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: platform.h.in,v 1.16.4.3 2001/06/09 00:53:22 gson Exp $ */
+/* $Id: platform.h.in,v 1.16.4.4 2001/06/14 13:37:45 gson Exp $ */
 
 #ifndef ISC_PLATFORM_H
 #define ISC_PLATFORM_H 1
  */
 @ISC_PLATFORM_RLIMITTYPE@
 
+/*
+ * Defined if unistd.h does not cause fd_set to be delared.
+ */
+@ISC_PLATFORM_NEEDSYSSELECTH@
+
 /*
  * Tell emacs to use C mode for this file.
  *
index 928e0c55e0d4cf9e5945eab7c58fcb305888b46a..1bb36d01742b79b20aaec07700be62e9510ed4a1 100644 (file)
@@ -15,7 +15,7 @@
  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: entropy.c,v 1.54.2.3 2001/04/10 00:24:47 gson Exp $ */
+/* $Id: entropy.c,v 1.54.2.4 2001/06/14 13:37:47 gson Exp $ */
 
 #include <config.h>
 
 #include <isc/mem.h>
 #include <isc/msgs.h>
 #include <isc/mutex.h>
+#include <isc/platform.h>
 #include <isc/region.h>
 #include <isc/sha1.h>
 #include <isc/string.h>
 #include <isc/time.h>
 #include <isc/util.h>
 
+#ifdef ISC_PLATFORM_NEEDSYSSELECTH
+#include <sys/select.h>
+#endif
+
 /*
  * Much of this code is modeled after the NetBSD /dev/random implementation,
  * written by Michael Graff <explorer@netbsd.org>.
index f535a4d0763f35c272121a6fc38d621ab9705013..ff55f8fdceec1451b399e0914ccd294ae82d3e99 100644 (file)
  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: socket_p.h,v 1.2.4.1 2001/01/09 22:51:26 bwelling Exp $ */
+/* $Id: socket_p.h,v 1.2.4.2 2001/06/14 13:37:46 gson Exp $ */
 
 /* ISC_PLATFORM_USETHREADS_DELETE */
 
 #ifndef ISC_SOCKET_P_H
 #define ISC_SOCKET_P_H
 
+#ifdef ISC_PLATFORM_NEEDSYSSELECTH
+#include <sys/select.h>
+#endif
+
 void
 isc__socketmgr_getfdsets(fd_set *readset, fd_set *writeset, int *maxfd);