From: Moriyoshi Koizumi Date: Fri, 4 Apr 2003 13:02:43 +0000 (+0000) Subject: Added cmsghdr check. Now sockets extension can be built under cygwin. X-Git-Tag: RELEASE_0_5~138 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b78e3c51555c833c8ec5708bd6240b3a089f3f7a;p=php Added cmsghdr check. Now sockets extension can be built under cygwin. --- diff --git a/configure.in b/configure.in index 3ffc27fc3f..e55542fae0 100644 --- a/configure.in +++ b/configure.in @@ -427,6 +427,15 @@ if test "$ac_cv_sockaddr_storage" = yes; then AC_DEFINE(HAVE_SOCKADDR_STORAGE,1,[Whether you have struct sockaddr_storage]) fi +dnl Check for struct sockaddr_storage +AC_CACHE_CHECK([for struct cmsghdr], ac_cv_cmsghdr, +[AC_TRY_COMPILE([ #include +#include ], [struct cmsghdr s; s], + ac_cv_cmsghdr=yes, ac_cv_cmsghdr=no)]) +if test "$ac_cv_cmsghdr" = yes; then + AC_DEFINE(HAVE_CMSGHDR,1,[Whether you have struct cmsghdr]) +fi + dnl Check if sockaddr data structure includes an "sa_len" member AC_TRY_COMPILE([ diff --git a/ext/sockets/sockets.c b/ext/sockets/sockets.c index db0a04a7d4..5ac4c0a4cb 100644 --- a/ext/sockets/sockets.c +++ b/ext/sockets/sockets.c @@ -139,7 +139,9 @@ function_entry sockets_functions[] = { PHP_FE(socket_send, NULL) PHP_FE(socket_recvfrom, second_fifth_and_sixth_args_force_ref) PHP_FE(socket_sendto, NULL) +#ifdef HAVE_CMSGHDR PHP_FE(socket_recvmsg, third_through_seventh_args_force_ref) +#endif PHP_FE(socket_sendmsg, NULL) PHP_FE(socket_readv, NULL) PHP_FE(socket_writev, NULL) @@ -1505,6 +1507,7 @@ PHP_FUNCTION(socket_sendto) /* {{{ proto bool socket_recvmsg(resource socket, resource iovec, array &control, int &controllen, int &flags, string &addr [, int &port]) Used to receive messages on a socket, whether connection-oriented or not */ +#ifdef HAVE_CMSGHDR PHP_FUNCTION(socket_recvmsg) { zval *arg1, *arg2, *arg3, *arg4, *arg5, *arg6, *arg7 = NULL; @@ -1643,6 +1646,7 @@ PHP_FUNCTION(socket_recvmsg) RETURN_FALSE; } } +#endif /* }}} */ /* {{{ proto bool socket_sendmsg(resource socket, resource iovec, int flags, string addr [, int port])