Commit:    ffe8303f24bd1db8af1e64e99c9f7edca4940d95
Author:    Felipe Pena <[email protected]>         Sun, 20 May 2012 19:37:20 
-0300
Parents:   867447f4202f845654eb43e39a825b0efb812d36
Branches:  PHP-5.4 master

Link:       
http://git.php.net/?p=php-src.git;a=commitdiff;h=ffe8303f24bd1db8af1e64e99c9f7edca4940d95

Log:
- Fixed bug #62025 (__ss_family was changed on AIX 5.3)

Bugs:
https://bugs.php.net/62025

Changed paths:
  M  ext/sockets/config.m4
  M  ext/sockets/sockets.c


Diff:
diff --git a/ext/sockets/config.m4 b/ext/sockets/config.m4
index 3fb93ae..4032621 100644
--- a/ext/sockets/config.m4
+++ b/ext/sockets/config.m4
@@ -27,6 +27,21 @@ if test "$PHP_SOCKETS" != "no"; then
     [AC_DEFINE(MISSING_MSGHDR_MSGFLAGS, 1, [ ])]
   )
   AC_DEFINE([HAVE_SOCKETS], 1, [ ])
+  
+  dnl Check for fied ss_family in sockaddr_storage (missing in AIX until 5.3)
+  AC_CACHE_CHECK([for field ss_family in struct sockaddr_storage], 
ac_cv_ss_family,
+  [
+    AC_TRY_COMPILE([
+#include <sys/socket.h>
+#include <sys/types.h>
+#include <netdb.h>
+  ], [struct sockaddr_storage sa_store; sa_store.ss_family = AF_INET6;],
+     ac_cv_ss_family=yes, ac_cv_ss_family=no)
+  ])
+  
+  if test "$ac_cv_ss_family" = yes; then
+    AC_DEFINE(HAVE_SA_SS_FAMILY,1,[Whether you have 
sockaddr_storage.ss_family])
+  fi
 
   PHP_NEW_EXTENSION([sockets], [sockets.c multicast.c], [$ext_shared])
   PHP_INSTALL_HEADERS([ext/sockets/], [php_sockets.h])
diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c
index 46d9f8e..5863767 100644
--- a/ext/sockets/sockets.c
+++ b/ext/sockets/sockets.c
@@ -77,6 +77,9 @@
 # define IS_INVALID_SOCKET(a)  (a->bsd_socket < 0)
 # define set_errno(a) (errno = a)
 # include "php_sockets.h"
+# if defined(AIX) && !defined(HAVE_SA_SS_FAMILY)
+# define ss_family __ss_family
+# endif
 # if HAVE_IF_NAMETOINDEX
 #  include <net/if.h>
 # endif


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to