- [
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netdb.h>
- ],
- [ struct addrinfo s; s.ai_flags = 0; ],
- [ ac_cv_have_struct_addrinfo="yes" ],
- [ ac_cv_have_struct_addrinfo="no" ]
- )])
-if test "x$ac_cv_have_struct_addrinfo" = "xyes" ; then
- AC_DEFINE(HAVE_STRUCT_ADDRINFO)
+ [#include <sys/types.h>
+ #include <sys/socket.h>],
+ [socklen_t len = 42; return len;],
+ ac_cv_type_socklen_t=yes,
+ ac_cv_type_socklen_t=no)
+])
+if test $ac_cv_type_socklen_t = yes; then
+ AC_DEFINE(HAVE_SOCKLEN_T, 1, [socklen_t available])
+fi
+
+AC_CACHE_CHECK([for struct addrinfo], ac_cv_struct_addrinfo,
+[
+ AC_TRY_COMPILE(
+ [#include <sys/types.h>
+ #include <sys/socket.h>
+ #include <netdb.h>],
+ [struct addrinfo ai; ai.ai_family = AF_INET; return ai.ai_family;],
+ ac_cv_struct_addrinfo=yes,
+ ac_cv_struct_addrinfo=no)
+])
+if test $ac_cv_struct_addrinfo = yes; then
+ AC_DEFINE(HAVE_STRUCT_ADDRINFO, 1, [struct addrinfo available])