[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2009-05-04 Thread Ilia Alshanetsky
iliaa   Mon May  4 14:43:14 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  
  Fixed a possible crash
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.18&r2=1.118.2.2.2.19&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.18 
php-src/main/network.c:1.118.2.2.2.19
--- php-src/main/network.c:1.118.2.2.2.18   Mon May  4 14:12:23 2009
+++ php-src/main/network.c  Mon May  4 14:43:14 2009
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.18 2009/05/04 14:12:23 iliaa Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.19 2009/05/04 14:43:14 iliaa Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -786,7 +786,7 @@
switch (sa->sa_family) {
 #if HAVE_GETADDRINFO && HAVE_IPV6
case AF_INET6:
-   if (strstr(bindto, ':')) {
+   if (bindto && strstr(bindto, ':')) {
((struct sockaddr_in6 
*)sa)->sin6_family = sa->sa_family;
((struct sockaddr_in6 *)sa)->sin6_port 
= htons(port);
socklen = sizeof(struct sockaddr_in6);



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2009-05-04 Thread Antony Dovgal
tony2001Mon May  4 14:46:37 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: use correct function
  
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.19&r2=1.118.2.2.2.20&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.19 
php-src/main/network.c:1.118.2.2.2.20
--- php-src/main/network.c:1.118.2.2.2.19   Mon May  4 14:43:14 2009
+++ php-src/main/network.c  Mon May  4 14:46:37 2009
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.19 2009/05/04 14:43:14 iliaa Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.20 2009/05/04 14:46:37 tony2001 Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -786,7 +786,7 @@
switch (sa->sa_family) {
 #if HAVE_GETADDRINFO && HAVE_IPV6
case AF_INET6:
-   if (bindto && strstr(bindto, ':')) {
+   if (bindto && strchr(bindto, ':')) {
((struct sockaddr_in6 
*)sa)->sin6_family = sa->sa_family;
((struct sockaddr_in6 *)sa)->sin6_port 
= htons(port);
socklen = sizeof(struct sockaddr_in6);



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2009-05-04 Thread Ilia Alshanetsky
iliaa   Mon May  4 14:12:23 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  
  Fixed bad merge
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.17&r2=1.118.2.2.2.18&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.17 
php-src/main/network.c:1.118.2.2.2.18
--- php-src/main/network.c:1.118.2.2.2.17   Mon May  4 13:12:35 2009
+++ php-src/main/network.c  Mon May  4 14:12:23 2009
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.17 2009/05/04 13:12:35 iliaa Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.18 2009/05/04 14:12:23 iliaa Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -423,14 +423,9 @@
switch (sa->sa_family) {
 #if HAVE_GETADDRINFO && HAVE_IPV6
case AF_INET6:
-   if (strstr(bindto, ':')) {
-   ((struct sockaddr_in6 
*)sa)->sin6_family = sa->sa_family;
-   ((struct sockaddr_in6 *)sa)->sin6_port 
= htons(port);
-   socklen = sizeof(struct sockaddr_in6);
-   } else {
-   socklen = 0;
-   sa = NULL;
-   }
+   ((struct sockaddr_in6 *)sa)->sin6_family = 
sa->sa_family;
+   ((struct sockaddr_in6 *)sa)->sin6_port = 
htons(port);
+   socklen = sizeof(struct sockaddr_in6);
break;
 #endif
case AF_INET:



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2009-01-02 Thread Felipe Pena
felipe  Sat Jan  3 00:06:59 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  - MFH: Windows part
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.15&r2=1.118.2.2.2.16&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.15 
php-src/main/network.c:1.118.2.2.2.16
--- php-src/main/network.c:1.118.2.2.2.15   Fri Jan  2 21:43:07 2009
+++ php-src/main/network.c  Sat Jan  3 00:06:59 2009
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.15 2009/01/02 21:43:07 felipe Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.16 2009/01/03 00:06:59 felipe Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -1141,7 +1141,10 @@
tv.tv_sec = timeout / 1000;
tv.tv_usec = (timeout - (tv.tv_sec * 1000)) * 1000;
}
-#ifndef PHP_WIN32
+/* Reseting/initializing */
+#ifdef PHP_WIN32
+   WSASetLastError(0);
+#else
errno = 0;
 #endif
n = select(max_fd + 1, &rset, &wset, &eset, timeout >= 0 ? &tv : NULL);



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2009-01-02 Thread Felipe Pena
felipe  Fri Jan  2 21:43:07 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  - MFH: Errr, rule nº 1: be portable :)
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.14&r2=1.118.2.2.2.15&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.14 
php-src/main/network.c:1.118.2.2.2.15
--- php-src/main/network.c:1.118.2.2.2.14   Fri Jan  2 21:29:04 2009
+++ php-src/main/network.c  Fri Jan  2 21:43:07 2009
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.14 2009/01/02 21:29:04 felipe Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.15 2009/01/02 21:43:07 felipe Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -1141,7 +1141,9 @@
tv.tv_sec = timeout / 1000;
tv.tv_usec = (timeout - (tv.tv_sec * 1000)) * 1000;
}
+#ifndef PHP_WIN32
errno = 0;
+#endif
n = select(max_fd + 1, &rset, &wset, &eset, timeout >= 0 ? &tv : NULL);
 
if (n >= 0) {



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2009-01-02 Thread Felipe Pena
felipe  Fri Jan  2 21:29:05 2009 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  - MFH: Working with unintialized errno (#46917, noticed by Jost Boekemeier)
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.13&r2=1.118.2.2.2.14&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.13 
php-src/main/network.c:1.118.2.2.2.14
--- php-src/main/network.c:1.118.2.2.2.13   Wed Dec 31 11:17:47 2008
+++ php-src/main/network.c  Fri Jan  2 21:29:04 2009
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.13 2008/12/31 11:17:47 sebastian Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.14 2009/01/02 21:29:04 felipe Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -1141,6 +1141,7 @@
tv.tv_sec = timeout / 1000;
tv.tv_usec = (timeout - (tv.tv_sec * 1000)) * 1000;
}
+   errno = 0;
n = select(max_fd + 1, &rset, &wset, &eset, timeout >= 0 ? &tv : NULL);
 
if (n >= 0) {



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2008-11-04 Thread Arnaud Le Blanc
lbarnaudTue Nov  4 20:41:37 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: initialize memory
  
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.11&r2=1.118.2.2.2.12&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.11 
php-src/main/network.c:1.118.2.2.2.12
--- php-src/main/network.c:1.118.2.2.2.11   Fri Oct 24 10:46:05 2008
+++ php-src/main/network.c  Tue Nov  4 20:41:37 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.11 2008/10/24 10:46:05 felipe Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.12 2008/11/04 20:41:37 lbarnaud Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -641,6 +641,7 @@
 {
php_sockaddr_storage sa;
socklen_t sl = sizeof(sa);
+   memset(&sa, 0, sizeof(sa));

if (getpeername(sock, (struct sockaddr*)&sa, &sl) == 0) {
php_network_populate_name_from_sockaddr((struct sockaddr*)&sa, 
sl,
@@ -660,6 +661,7 @@
 {
php_sockaddr_storage sa;
socklen_t sl = sizeof(sa);
+   memset(&sa, 0, sizeof(sa));

if (getsockname(sock, (struct sockaddr*)&sa, &sl) == 0) {
php_network_populate_name_from_sockaddr((struct sockaddr*)&sa, 
sl,



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2008-07-11 Thread Jani Taskinen
janiFri Jul 11 13:12:18 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: silence warning
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.9&r2=1.118.2.2.2.10&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.9 
php-src/main/network.c:1.118.2.2.2.10
--- php-src/main/network.c:1.118.2.2.2.9Tue Mar 11 10:27:23 2008
+++ php-src/main/network.c  Fri Jul 11 13:12:18 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.9 2008/03/11 10:27:23 tony2001 Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.10 2008/07/11 13:12:18 jani Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -162,7 +162,9 @@
struct sockaddr **sap;
int n;
 #if HAVE_GETADDRINFO
+# if HAVE_IPV6
static int ipv6_borked = -1; /* the way this is used *is* thread safe */
+# endif
struct addrinfo hints, *res, *sai;
 #else
struct hostent *host_info;



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2008-03-11 Thread Antony Dovgal
tony2001Tue Mar 11 10:27:23 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: fix segfault - error_string may be NULL, in this case we have to follow 
the old behavior
  
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.8&r2=1.118.2.2.2.9&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.8 
php-src/main/network.c:1.118.2.2.2.9
--- php-src/main/network.c:1.118.2.2.2.8Mon Mar 10 20:09:22 2008
+++ php-src/main/network.c  Tue Mar 11 10:27:23 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.8 2008/03/10 20:09:22 andrey Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.9 2008/03/11 10:27:23 tony2001 Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -200,12 +200,20 @@
 # endif

if ((n = getaddrinfo(host, NULL, &hints, &res))) {
-   spprintf(error_string, 0, "php_network_getaddresses: 
getaddrinfo failed: %s", PHP_GAI_STRERROR(n));
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
+   if (error_string) {
+   spprintf(error_string, 0, "php_network_getaddresses: 
getaddrinfo failed: %s", PHP_GAI_STRERROR(n));
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
+   } else {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"php_network_getaddresses: getaddrinfo failed: %s", PHP_GAI_STRERROR(n));
+   }
return 0;
} else if (res == NULL) {
-   spprintf(error_string, 0, "php_network_getaddresses: 
getaddrinfo failed (null result pointer) errno=%d", errno);
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
+   if (error_string) {
+   spprintf(error_string, 0, "php_network_getaddresses: 
getaddrinfo failed (null result pointer) errno=%d", errno);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
+   } else {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"php_network_getaddresses: getaddrinfo failed (null result pointer)");
+   }
return 0;
}
 
@@ -229,8 +237,12 @@
/* XXX NOT THREAD SAFE (is safe under win32) */
host_info = gethostbyname(host);
if (host_info == NULL) {
-   spprintf(error_string, 0, "php_network_getaddresses: 
gethostbyname failed. errno=%d", errno);
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
+   if (error_string) {
+   spprintf(error_string, 0, 
"php_network_getaddresses: gethostbyname failed. errno=%d", errno);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"%s", *error_string);
+   } else {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"php_network_getaddresses: gethostbyname failed");
+   }
return 0;
}
in = *((struct in_addr *) host_info->h_addr);



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c /main/streams xp_socket.c

2008-03-10 Thread Andrey Hristov
andrey  Mon Mar 10 20:09:23 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
/php-src/main/streams   xp_socket.c 
  Log:
  char **error_string was passed but not used. This causes problems in cases
  of getaddrinfo() failure, because the upper layers don't get the error.
  initialize a variable because we were reading initialized in case of error.
  
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.7&r2=1.118.2.2.2.8&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.7 
php-src/main/network.c:1.118.2.2.2.8
--- php-src/main/network.c:1.118.2.2.2.7Mon Dec 31 07:20:15 2007
+++ php-src/main/network.c  Mon Mar 10 20:09:22 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.7 2007/12/31 07:20:15 sebastian Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.8 2008/03/10 20:09:22 andrey Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -200,10 +200,12 @@
 # endif

if ((n = getaddrinfo(host, NULL, &hints, &res))) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"php_network_getaddresses: getaddrinfo failed: %s", PHP_GAI_STRERROR(n));
+   spprintf(error_string, 0, "php_network_getaddresses: 
getaddrinfo failed: %s", PHP_GAI_STRERROR(n));
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
return 0;
} else if (res == NULL) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"php_network_getaddresses: getaddrinfo failed (null result pointer)");
+   spprintf(error_string, 0, "php_network_getaddresses: 
getaddrinfo failed (null result pointer) errno=%d", errno);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
return 0;
}
 
@@ -227,7 +229,8 @@
/* XXX NOT THREAD SAFE (is safe under win32) */
host_info = gethostbyname(host);
if (host_info == NULL) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"php_network_getaddresses: gethostbyname failed");
+   spprintf(error_string, 0, "php_network_getaddresses: 
gethostbyname failed. errno=%d", errno);
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
*error_string);
return 0;
}
in = *((struct in_addr *) host_info->h_addr);
http://cvs.php.net/viewvc.cgi/php-src/main/streams/xp_socket.c?r1=1.33.2.2.2.8&r2=1.33.2.2.2.9&diff_format=u
Index: php-src/main/streams/xp_socket.c
diff -u php-src/main/streams/xp_socket.c:1.33.2.2.2.8 
php-src/main/streams/xp_socket.c:1.33.2.2.2.9
--- php-src/main/streams/xp_socket.c:1.33.2.2.2.8   Wed Feb 27 00:32:39 2008
+++ php-src/main/streams/xp_socket.cMon Mar 10 20:09:22 2008
@@ -16,7 +16,7 @@
   +--+
 */
 
-/* $Id: xp_socket.c,v 1.33.2.2.2.8 2008/02/27 00:32:39 iliaa Exp $ */
+/* $Id: xp_socket.c,v 1.33.2.2.2.9 2008/03/10 20:09:22 andrey Exp $ */
 
 #include "php.h"
 #include "ext/standard/file.h"
@@ -601,7 +601,7 @@
 {
char *host = NULL, *bindto = NULL;
int portno, bindport = 0;
-   int err;
+   int err = 0;
int ret;
zval **tmpzval = NULL;
 



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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2007-07-18 Thread Jani Taskinen
janiWed Jul 18 09:04:58 2007 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: Use correct macro name
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.5&r2=1.118.2.2.2.6&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.5 
php-src/main/network.c:1.118.2.2.2.6
--- php-src/main/network.c:1.118.2.2.2.5Tue Jul 17 13:29:33 2007
+++ php-src/main/network.c  Wed Jul 18 09:04:58 2007
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.5 2007/07/17 13:29:33 jani Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.6 2007/07/18 09:04:58 jani Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -1035,7 +1035,7 @@
flags = !block;
if (ioctlsocket(socketd, FIONBIO, &flags) == SOCKET_ERROR) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
WSAGetLastError());
-   ret = FALSE;
+   ret = FAILURE;
}
 #else
flags = fcntl(socketd, F_GETFL);

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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2007-07-17 Thread Jani Taskinen
janiTue Jul 17 13:29:33 2007 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: ws fix
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.4&r2=1.118.2.2.2.5&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.4 
php-src/main/network.c:1.118.2.2.2.5
--- php-src/main/network.c:1.118.2.2.2.4Thu Jan 11 15:51:37 2007
+++ php-src/main/network.c  Tue Jul 17 13:29:33 2007
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.4 2007/01/11 15:51:37 tony2001 Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.5 2007/07/17 13:29:33 jani Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -1026,32 +1026,32 @@
 
 PHPAPI int php_set_sock_blocking(int socketd, int block TSRMLS_DC)
 {
-  int ret = SUCCESS;
-  int flags;
-  int myflag = 0;
+   int ret = SUCCESS;
+   int flags;
+   int myflag = 0;
 
 #ifdef PHP_WIN32
-  /* with ioctlsocket, a non-zero sets nonblocking, a zero sets blocking */
- flags = !block;
- if (ioctlsocket(socketd, FIONBIO, &flags)==SOCKET_ERROR){
- php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
WSAGetLastError());
- ret = FALSE;
-  }
+   /* with ioctlsocket, a non-zero sets nonblocking, a zero sets blocking 
*/
+   flags = !block;
+   if (ioctlsocket(socketd, FIONBIO, &flags) == SOCKET_ERROR) {
+   php_error_docref(NULL TSRMLS_CC, E_WARNING, "%s", 
WSAGetLastError());
+   ret = FALSE;
+   }
 #else
-  flags = fcntl(socketd, F_GETFL);
+   flags = fcntl(socketd, F_GETFL);
 #ifdef O_NONBLOCK
-  myflag = O_NONBLOCK; /* POSIX version */
+   myflag = O_NONBLOCK; /* POSIX version */
 #elif defined(O_NDELAY)
-  myflag = O_NDELAY;   /* old non-POSIX version */
+   myflag = O_NDELAY;   /* old non-POSIX version */
 #endif
-  if (!block) {
-  flags |= myflag;
-  } else {
+   if (!block) {
+   flags |= myflag;
+   } else {
flags &= ~myflag;
-  }
-  fcntl(socketd, F_SETFL, flags);
+   }
+   fcntl(socketd, F_SETFL, flags);
 #endif
-  return ret;
+   return ret;
 }
 
 PHPAPI void _php_emit_fd_setsize_warning(int max_fd)

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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2007-01-11 Thread Antony Dovgal
tony2001Thu Jan 11 15:51:37 2007 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH
  
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.3&r2=1.118.2.2.2.4&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.3 
php-src/main/network.c:1.118.2.2.2.4
--- php-src/main/network.c:1.118.2.2.2.3Mon Jan  1 09:36:11 2007
+++ php-src/main/network.c  Thu Jan 11 15:51:37 2007
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.3 2007/01/01 09:36:11 sebastian Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.4 2007/01/11 15:51:37 tony2001 Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -441,7 +441,7 @@
err = php_socket_errno();
}
 
-   close(sock);
+   closesocket(sock);
}
sock = -1;
 
@@ -870,7 +870,7 @@
 #endif
}
 
-   close(sock);
+   closesocket(sock);
}
sock = -1;
 

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



[PHP-CVS] cvs: php-src(PHP_5_2) /main network.c

2006-09-11 Thread Sara Golemon
pollita Mon Sep 11 19:18:07 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/main   network.c 
  Log:
  MFH: Bug #38687 - sockaddr local storage insufficient for all sock families
  
http://cvs.php.net/viewvc.cgi/php-src/main/network.c?r1=1.118.2.2.2.1&r2=1.118.2.2.2.2&diff_format=u
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.118.2.2.2.1 
php-src/main/network.c:1.118.2.2.2.2
--- php-src/main/network.c:1.118.2.2.2.1Sat Jul  1 11:35:34 2006
+++ php-src/main/network.c  Mon Sep 11 19:18:07 2006
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: network.c,v 1.118.2.2.2.1 2006/07/01 11:35:34 nlopess Exp $ */
+/* $Id: network.c,v 1.118.2.2.2.2 2006/09/11 19:18:07 pollita Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -787,37 +787,46 @@
/* make a connection attempt */
 
if (bindto) {
-   struct sockaddr local_address;
+   struct sockaddr *local_address = NULL;
+   int local_address_len = 0;

if (sa->sa_family == AF_INET) {
-   struct sockaddr_in *in4 = (struct 
sockaddr_in*)&local_address;
+   struct sockaddr_in *in4 = 
emalloc(sizeof(struct sockaddr_in));
+
+   local_address = (struct sockaddr*)in4;
+   local_address_len = sizeof(struct 
sockaddr_in);

in4->sin_family = sa->sa_family;
in4->sin_port = htons(bindport);
if (!inet_aton(bindto, &in4->sin_addr)) 
{
-   goto bad_ip;
+   php_error_docref(NULL 
TSRMLS_CC, E_WARNING, "Invalid IP Address: %s", bindto);
+   goto skip_bind;
}
memset(&(in4->sin_zero), 0, 
sizeof(in4->sin_zero));
}
 #if HAVE_IPV6 && HAVE_INET_PTON
 else { /* IPV6 */
-   struct sockaddr_in6 *in6 = (struct 
sockaddr_in6*)&local_address;
+   struct sockaddr_in6 *in6 = 
emalloc(sizeof(struct sockaddr_in6));
+
+   local_address = (struct sockaddr*)in6;
+   local_address_len = sizeof(struct 
sockaddr_in6);

in6->sin6_family = sa->sa_family;
in6->sin6_port = htons(bindport);
if (inet_pton(AF_INET6, bindto, 
&in6->sin6_addr) < 1) {
-   goto bad_ip;
+   php_error_docref(NULL 
TSRMLS_CC, E_WARNING, "Invalid IP Address: %s", bindto);
+   goto skip_bind;
}
}
 #endif
-   if (bind(sock, &local_address, sizeof(struct 
sockaddr))) {
+   if (!local_address || bind(sock, local_address, 
local_address_len)) {
php_error_docref(NULL TSRMLS_CC, 
E_WARNING, "failed to bind to '%s:%d', system said: %s", bindto, bindport, 
strerror(errno));
}
-   goto bind_done;
-bad_ip:
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"Invalid IP Address: %s", bindto);
+skip_bind:
+   if (local_address) {
+   efree(local_address);
+   }
}
-bind_done:
/* free error string recieved during previous iteration 
(if any) */
if (error_string && *error_string) {
efree(*error_string);

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