]> sjero.net Git - wget/commitdiff
[svn] Check for struct sockaddr_storage.
authorhniksic <devnull@localhost>
Wed, 26 Nov 2003 17:20:23 +0000 (09:20 -0800)
committerhniksic <devnull@localhost>
Wed, 26 Nov 2003 17:20:23 +0000 (09:20 -0800)
ChangeLog
aclocal.m4
configure.in
src/connect.c
src/connect.h

index 83120a4cce17abc2b482d1670544dea4c936065b..b9bce048c4ef7c00559bccf40d97074f398fbdaa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2003-11-26  Hrvoje Niksic  <hniksic@xemacs.org>
+
+       * configure.in: Check for struct sockaddr_storage.
+
 2003-11-12  Hrvoje Niksic  <hniksic@xemacs.org>
 
        * configure.in: Use a more standard checking message when checking
index d71269ac3e0fb84940455392d885901c4d3a1c41..69a5a7483e7f820938b87daee5623640ffff81c8 100644 (file)
@@ -167,18 +167,18 @@ dnl START OF IPv6 AUTOCONFIGURATION SUPPORT MACROS
 dnl ************************************************************
 
 AC_DEFUN([TYPE_STRUCT_SOCKADDR_IN6],[
-  ds6_have_sockaddr_in6=
+  wget_have_sockaddr_in6=
   AC_CHECK_TYPES([struct sockaddr_in6],[
-    ds6_have_sockaddr_in6=yes
+    wget_have_sockaddr_in6=yes
   ],[
-    ds6_have_sockaddr_in6=no
+    wget_have_sockaddr_in6=no
   ],[
 #include <sys/types.h>
 #include <sys/socket.h>
 #include <netinet/in.h>
   ])
 
-  if test "X$ds6_have_sockaddr_in6" = "Xyes"; then :
+  if test "X$wget_have_sockaddr_in6" = "Xyes"; then :
     $1
   else :
     $2
@@ -189,12 +189,12 @@ AC_DEFUN([TYPE_STRUCT_SOCKADDR_IN6],[
 AC_DEFUN([MEMBER_SIN6_SCOPE_ID],[
   AC_REQUIRE([TYPE_STRUCT_SOCKADDR_IN6])
   
-  ds6_member_sin6_scope_id=
-  if test "X$ds6_have_sockaddr_in6" = "Xyes"; then
+  wget_member_sin6_scope_id=
+  if test "X$wget_have_sockaddr_in6" = "Xyes"; then
     AC_CHECK_MEMBER([struct sockaddr_in6.sin6_scope_id],[
-      ds6_member_sin6_scope_id=yes
+      wget_member_sin6_scope_id=yes
     ],[
-      ds6_member_sin6_scope_id=no
+      wget_member_sin6_scope_id=no
     ],[
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -202,7 +202,7 @@ AC_DEFUN([MEMBER_SIN6_SCOPE_ID],[
     ])
   fi
 
-  if test "X$ds6_member_sin6_scope_id" = "Xyes"; then
+  if test "X$wget_member_sin6_scope_id" = "Xyes"; then
     AC_DEFINE([HAVE_SOCKADDR_IN6_SCOPE_ID], 1,
       [Define if struct sockaddr_in6 has the sin6_scope_id member])
     $1
@@ -213,7 +213,7 @@ AC_DEFUN([MEMBER_SIN6_SCOPE_ID],[
 
 
 AC_DEFUN([PROTO_INET6],[
-  AC_CACHE_CHECK([for INET6 protocol support], [ds6_cv_proto_inet6],[
+  AC_CACHE_CHECK([for INET6 protocol support], [wget_cv_proto_inet6],[
     AC_TRY_CPP([
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -225,13 +225,13 @@ AC_DEFUN([PROTO_INET6],[
 #error Mlssing AF_INET6
 #endif
     ],[
-      ds6_cv_proto_inet6=yes
+      wget_cv_proto_inet6=yes
     ],[
-      ds6_cv_proto_inet6=no
+      wget_cv_proto_inet6=no
     ])
   ])
 
-  if test "X$ds6_cv_proto_inet6" = "Xyes"; then :
+  if test "X$wget_cv_proto_inet6" = "Xyes"; then :
     $1
   else :
     $2
@@ -241,7 +241,7 @@ AC_DEFUN([PROTO_INET6],[
 
 AC_DEFUN([GETADDRINFO_AI_ADDRCONFIG],[
   AC_CACHE_CHECK([if getaddrinfo supports AI_ADDRCONFIG],
-    [ds6_cv_gai_ai_addrconfig],[
+    [wget_cv_gai_ai_addrconfig],[
     AC_TRY_CPP([
 #include <netdb.h>
 
@@ -249,13 +249,13 @@ AC_DEFUN([GETADDRINFO_AI_ADDRCONFIG],[
 #error Missing AI_ADDRCONFIG
 #endif
     ],[
-      ds6_cv_gai_ai_addrconfig=yes
+      wget_cv_gai_ai_addrconfig=yes
     ],[
-      ds6_cv_gai_ai_addrconfig=no
+      wget_cv_gai_ai_addrconfig=no
     ])
   ])
 
-  if test "X$ds6_cv_gai_ai_addrconfig" = "Xyes"; then :
+  if test "X$wget_cv_gai_ai_addrconfig" = "Xyes"; then :
     $1
   else :
     $2
@@ -264,7 +264,7 @@ AC_DEFUN([GETADDRINFO_AI_ADDRCONFIG],[
 
 
 AC_DEFUN([GETADDRINFO_AI_ALL],[
-  AC_CACHE_CHECK([if getaddrinfo supports AI_ALL],[ds6_cv_gai_ai_all],[
+  AC_CACHE_CHECK([if getaddrinfo supports AI_ALL],[wget_cv_gai_ai_all],[
     AC_TRY_CPP([
 #include <netdb.h>
 
@@ -272,13 +272,13 @@ AC_DEFUN([GETADDRINFO_AI_ALL],[
 #error Missing AI_ALL
 #endif
     ],[
-      ds6_cv_gai_ai_all=yes
+      wget_cv_gai_ai_all=yes
     ],[
-      ds6_cv_gai_ai_all=no
+      wget_cv_gai_ai_all=no
     ])
   ])
 
-  if test "X$ds6_cv_gai_ai_all" = "Xyes"; then :
+  if test "X$wget_cv_gai_ai_all" = "Xyes"; then :
     $1
   else :
     $2
@@ -287,7 +287,7 @@ AC_DEFUN([GETADDRINFO_AI_ALL],[
 
 
 AC_DEFUN([GETADDRINFO_AI_V4MAPPED],[
-  AC_CACHE_CHECK([if getaddrinfo supports AI_V4MAPPED],[ds6_cv_gai_ai_v4mapped],[
+  AC_CACHE_CHECK([if getaddrinfo supports AI_V4MAPPED],[wget_cv_gai_ai_v4mapped],[
     AC_TRY_CPP([
 #include <netdb.h>
 
@@ -295,19 +295,26 @@ AC_DEFUN([GETADDRINFO_AI_V4MAPPED],[
 #error Missing AI_V4MAPPED
 #endif
     ],[
-      ds6_cv_gai_ai_v4mapped=yes
+      wget_cv_gai_ai_v4mapped=yes
     ],[
-      ds6_cv_gai_ai_v4mapped=no
+      wget_cv_gai_ai_v4mapped=no
     ])
   ])
 
-  if test "X$ds6_cv_gai_ai_v4mapped" = "Xyes"; then :
+  if test "X$wget_cv_gai_ai_v4mapped" = "Xyes"; then :
     $1
   else :
     $2
   fi
 ])
 
+AC_DEFUN([WGET_STRUCT_SOCKADDR_STORAGE],[
+  AC_CHECK_TYPES([struct sockaddr_storage],[], [], [
+#include <sys/types.h>
+#include <sys/socket.h>
+  ])
+])
+
 dnl ************************************************************
 dnl END OF IPv6 AUTOCONFIGURATION SUPPORT MACROS
 dnl ************************************************************
index aa0d7f75fd344a38b517d5040847f2fd4cc785b1..98e3b1efada10997c682d60e43cb886eac906fc3 100644 (file)
@@ -484,33 +484,33 @@ AC_ARG_ENABLE(ipv6,
 )
 
 if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
-  AC_CHECK_FUNCS(getaddrinfo,[
-    GETADDRINFO_AI_ADDRCONFIG(
+  AC_CHECK_FUNCS(getaddrinfo, [
+    GETADDRINFO_AI_ADDRCONFIG([
       AC_DEFINE(
         [HAVE_GETADDRINFO_AI_ADDRCONFIG], 1, 
         [Define if the system headers support the AI_ADDRCONFIG flag.]
       )
-    )
-    GETADDRINFO_AI_V4MAPPED(
+    ])
+    GETADDRINFO_AI_V4MAPPED([
       AC_DEFINE(
         [HAVE_GETADDRINFO_AI_V4MAPPED], 1, 
         [Define if the system headers support the AI_V4MAPPED flag.]
       )
-    )
-    GETADDRINFO_AI_ALL(
+    ])
+    GETADDRINFO_AI_ALL([
       AC_DEFINE(
         [HAVE_GETADDRINFO_AI_ALL], 1, 
         [Define if the system headers support the AI_ALL flag.]
       )
-    )
-  ],[
+    ])
+  ], [
     AC_MSG_NOTICE([Disabling IPv6 support: your system does not support getaddrinfo(3)])
     ipv6=no
   ])
 fi
 
 if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
-  PROTO_INET6(,[
+  PROTO_INET6([], [
     AC_MSG_NOTICE([Disabling IPv6 support: your system does not support the PF_INET6 protocol family])
     ipv6=no
   ])
@@ -524,6 +524,7 @@ if test "X$ipv6" = "Xyes" || test "X$check_for_ipv6" = "Xyes"; then
     ipv6=no
   ])
   if test "X$ipv6" = "Xyes"; then
+    WGET_STRUCT_SOCKADDR_STORAGE
     MEMBER_SIN6_SCOPE_ID
   fi
 fi
index eeb4eb288f9a9d7b5782d8a93b14c28a0486d445..83c5014b3e5ea24f8dd3bfe9df6d317939adc9b5 100644 (file)
@@ -66,7 +66,15 @@ so, delete this exception statement from your version.  */
 extern int errno;
 #endif
 
-\f
+/* Define sockaddr_storage where unavailable (presumably on IPv4-only
+   hosts).  */
+
+#ifndef ENABLE_IPV6
+# ifndef HAVE_STRUCT_SOCKADDR_STORAGE
+#  define sockaddr_storage sockaddr_in
+# endif
+#endif /* ENABLE_IPV6 */
+
 /* Fill SA as per the data in IP and PORT.  SA shoult point to struct
    sockaddr_storage if ENABLE_IPV6 is defined, to struct sockaddr_in
    otherwise.  */
index f0ae5c074443078540414597e35a9aad52d46dd8..33cc7ab5f61812f4029c59b3c5031427e3abce0a 100644 (file)
@@ -32,12 +32,6 @@ so, delete this exception statement from your version.  */
 
 #include "host.h"              /* for definition of ip_address */
 
-#ifndef ENABLE_IPV6
-# ifndef HAVE_SOCKADDR_STORAGE
-#  define sockaddr_storage sockaddr_in
-# endif
-#endif /* ENABLE_IPV6 */
-
 /* Function declarations */
 
 /* Returned by connect_to_host when host name cannot be resolved.  */