cmv Fri Feb 2 12:55:27 2001 EDT
Modified files:
/php4/ext/sockets sockets.c
Log:
Fix for http://bugs.php.net/bugs.php?id=9082
I know switch() is expensive, so someone rewrite this "properly" if you
want.
Index: php4/ext/sockets/sockets.c
diff -u php4/ext/sockets/sockets.c:1.29 php4/ext/sockets/sockets.c:1.30
--- php4/ext/sockets/sockets.c:1.29 Thu Jan 18 12:49:12 2001
+++ php4/ext/sockets/sockets.c Fri Feb 2 12:55:27 2001
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: sockets.c,v 1.29 2001/01/18 20:49:12 sterling Exp $ */
+/* $Id: sockets.c,v 1.30 2001/02/02 20:55:27 cmv Exp $ */
#include "php.h"
@@ -857,10 +857,27 @@
int salen = sizeof(php_sockaddr_storage);
int ret;
+ switch (ZEND_NUM_ARGS()) {
+ case 3:
+ if (zend_get_parameters_ex(ZEND_NUM_ARGS(), &fd, &addr, &port)
+== FAILURE)
+ WRONG_PARAM_COUNT;
+ break;
+ case 2:
+ if (zend_get_parameters_ex(ZEND_NUM_ARGS(), &fd, &addr) ==
+FAILURE)
+ WRONG_PARAM_COUNT;
+ break;
+ MAKE_STD_ZVAL((*port));
+
+ default:
+ WRONG_PARAM_COUNT;
+ }
+
+/*
if (ZEND_NUM_ARGS() < 2 || ZEND_NUM_ARGS() > 3 ||
zend_get_parameters_ex(ZEND_NUM_ARGS(), &fd, &addr, &port) == FAILURE) {
WRONG_PARAM_COUNT;
}
+*/
multi_convert_to_long_ex(ZEND_NUM_ARGS() - 1, fd, port);
convert_to_string_ex(addr);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]