summaryrefslogtreecommitdiff
path: root/m4/getaddrinfo.m4
diff options
context:
space:
mode:
authorPaolo Bonzini <bonzini@gnu.org>2008-10-13 19:49:44 +0200
committerPaolo Bonzini <bonzini@gnu.org>2008-10-13 19:51:13 +0200
commit3b8caead4388d424884b49c791a2e85d7750623f (patch)
treef4b4131528e876656d57a9f03c15bfe55ebeb71e /m4/getaddrinfo.m4
parentb13005f4bf9ed08072874318e2b377851a70263a (diff)
downloadgnulib-3b8caead4388d424884b49c791a2e85d7750623f.tar.gz
Fix getaddrinfo emulation for systems with struct sockaddr.sa_len.
2008-10-13 Paolo Bonzini <bonzini@gnu.org> fix getaddrinfo emulation for systems with struct sockaddr.sa_len * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect struct sockaddr.sa_len. * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
Diffstat (limited to 'm4/getaddrinfo.m4')
-rw-r--r--m4/getaddrinfo.m45
1 files changed, 5 insertions, 0 deletions
diff --git a/m4/getaddrinfo.m4 b/m4/getaddrinfo.m4
index 5d36c19505..52135ba947 100644
--- a/m4/getaddrinfo.m4
+++ b/m4/getaddrinfo.m4
@@ -99,6 +99,11 @@ AC_DEFUN([gl_PREREQ_GETADDRINFO], [
AC_REQUIRE([gl_HEADER_SYS_SOCKET])
AC_REQUIRE([AC_C_INLINE])
AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+
+ dnl Including sys/socket.h is wrong for Windows, but Windows does not
+ dnl have sa_len so the result is correct anyway.
+ AC_CHECK_MEMBERS([struct sockaddr.sa_len], , , [#include <sys/socket.h>])
+
AC_CHECK_HEADERS_ONCE(netinet/in.h netdb.h)
AC_CHECK_DECLS([getaddrinfo, freeaddrinfo, gai_strerror, getnameinfo],,,[
/* sys/types.h is not needed according to POSIX, but the