summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/configure.in9
-rw-r--r--source3/lib/replace/system/network.h4
2 files changed, 13 insertions, 0 deletions
diff --git a/source3/configure.in b/source3/configure.in
index fb5cd03692..d7fde01619 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -3042,6 +3042,15 @@ if test x"$samba_cv_HAVE_IFACE_IFREQ" = x"yes"; then
fi
fi
+dnl AIX 5.3.0.0
+AC_TRY_COMPILE([#include <sys/socket.h>],[
+struct sockaddr_storage s; s.__ss_family = 0],
+samba_cv_have_aix_sockaddr_storage=yes,samba_cv_have_aix_sockaddr_storage=no)
+
+if test x"$samba_cv_have_aix_sockaddr_storage" = x"yes"; then
+ AC_DEFINE(HAVE_AIX_SOCKADDR_STORAGE, 1, [Whether struct sockaddr_storage has __sa_family])
+fi
+
if test $iface = no; then
AC_CACHE_CHECK([for iface AIX],samba_cv_HAVE_IFACE_AIX,[
SAVE_CPPFLAGS="$CPPFLAGS"
diff --git a/source3/lib/replace/system/network.h b/source3/lib/replace/system/network.h
index 9087c02da1..b6ae3c7c6f 100644
--- a/source3/lib/replace/system/network.h
+++ b/source3/lib/replace/system/network.h
@@ -233,6 +233,10 @@ typedef unsigned short int sa_family_t;
#endif
#endif
+#ifdef HAVE_AIX_SOCKADDR_STORAGE
+#define ss_family __ss_family
+#endif
+
#ifndef HAVE_STRUCT_ADDRINFO
#define HAVE_STRUCT_ADDRINFO
struct addrinfo {