From aa7273233d39be552897d2180426820a3755deed Mon Sep 17 00:00:00 2001 From: Simon Wilkinson Date: Sun, 16 May 2010 22:56:13 +0100 Subject: [PATCH] Autoconf: Use a standard test for socklen_t Use the standard AC_CHECK_TYPES mechanism to check for the existence of socklen_t, and to typedef it as an int if it's not found, rather than growing our own. Change-Id: Ib5aeb600750558167f63833dd4a7480dbe312b8a Reviewed-on: http://gerrit.openafs.org/1972 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- acinclude.m4 | 4 +++- src/cf/socklen.m4 | 18 ------------------ src/config/afsconfig-windows.h | 2 +- src/config/stds.h | 4 ++++ 4 files changed, 8 insertions(+), 20 deletions(-) delete mode 100644 src/cf/socklen.m4 diff --git a/acinclude.m4 b/acinclude.m4 index 2852499..2dcc7c2 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1271,7 +1271,6 @@ else AC_MSG_RESULT(no) fi -AC_TYPE_SOCKLEN_T AC_TYPE_SIGNAL AC_CHECK_SIZEOF(void *) AC_CHECK_SIZEOF(unsigned long long) @@ -1283,6 +1282,9 @@ AC_CHECK_TYPES([ssize_t]) AC_CHECK_TYPES([sig_atomic_t],[],[], [#include #include ]) +AC_CHECK_TYPES([socklen_t],[],[], +[#include +#include ]) AC_SIZEOF_TYPE(long) AC_HEADER_PAM_CONST diff --git a/src/cf/socklen.m4 b/src/cf/socklen.m4 deleted file mode 100644 index 50ee10f..0000000 --- a/src/cf/socklen.m4 +++ /dev/null @@ -1,18 +0,0 @@ -AC_DEFUN([AC_TYPE_SOCKLEN_T], -[ -AC_CACHE_CHECK([for socklen_t], -ac_cv_type_socklen_t, [ - AC_TRY_COMPILE([ - #include - #include - ], - [ - socklen_t len = 42; return 0; - ], - ac_cv_type_socklen_t="yes", ac_cv_type_socklen_t="no") - ]) - - if test "x$ac_cv_type_socklen_t" = "xno"; then - AC_DEFINE(socklen_t, int, [the type of the last argument to getsockopt etc]) - fi -]) diff --git a/src/config/afsconfig-windows.h b/src/config/afsconfig-windows.h index d41eea8..b8e89c2 100644 --- a/src/config/afsconfig-windows.h +++ b/src/config/afsconfig-windows.h @@ -197,4 +197,4 @@ #endif /* Windows does not provide socklen_t prior to WDK 6.0 */ -typedef int socklen_t; +#undef HAVE_SOCKLEN_T diff --git a/src/config/stds.h b/src/config/stds.h index a9d22f5..d7358c5 100644 --- a/src/config/stds.h +++ b/src/config/stds.h @@ -59,6 +59,10 @@ typedef int ssize_t; typedef int sig_atomic_t; #endif +#ifndef HAVE_SOCKLEN_T +typedef int socklen_t; +#endif + typedef short afs_int16; typedef unsigned short afs_uint16; #ifdef AFS_64BIT_ENV -- 1.9.4