cvs: php4 /ext/sockets sockets.c
| From: | Sterling Hughes | Date: | Wed, 23 Aug 2000 08:29:16 +0000 |
| Subject: | cvs: php4 /ext/sockets sockets.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-1335@lists.php.net to get a copy of this message | ||
sterling Wed Aug 23 01:29:16 2000 EDT
Modified files:
/php4/ext/sockets sockets.c
Log:
A little condensing,
Add an additional check to make sure port is specified with
AF_INET in connect().
Index: php4/ext/sockets/sockets.c
diff -u php4/ext/sockets/sockets.c:1.7 php4/ext/sockets/sockets.c:1.8
--- php4/ext/sockets/sockets.c:1.7 Tue Aug 22 23:41:51 2000
+++ php4/ext/sockets/sockets.c Wed Aug 23 01:29:16 2000
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: sockets.c,v 1.7 2000/08/23 06:41:51 chrisv Exp $ */
+/* $Id: sockets.c,v 1.8 2000/08/23 08:29:16 sterling Exp $ */
#include "php.h"
@@ -444,7 +444,7 @@
return fd;
}
-/* {{{ proto long open_listen_sock(long port)
+/* {{{ proto int open_listen_sock(int port)
Opens a socket on port to accept connections */
PHP_FUNCTION(open_listen_sock)
{
@@ -847,26 +847,19 @@
struct sockaddr sa;
struct sockaddr_in *sin;
struct sockaddr_un *sun;
- int salen = sizeof(sa);
- int ret;
+ int ret, salen = sizeof(sa);
struct in_addr addr_buf;
struct hostent *host_struct;
- int args;
-
- args = ZEND_NUM_ARGS();
-
- if (args < 2) {
- WRONG_PARAM_COUNT;
- }
+ int argc = ZEND_NUM_ARGS();
- ret = zend_get_parameters_ex(args, &sockfd, &addr, &port);
- if (ret == FAILURE) {
+ if (argc < 2 || argc > 3 ||
+ zend_get_parameters_ex(argc, &sockfd, &addr, &port) == FAILURE) {
WRONG_PARAM_COUNT;
}
-
convert_to_long_ex(sockfd)
convert_to_string_ex(addr);
- if (args > 2) {
+
+ if (argc > 2) {
convert_to_long_ex(port);
}
@@ -880,7 +873,12 @@
switch(sa.sa_family) {
case AF_INET: {
sin = &sa;
- sin->sin_port = htons((unsigned short int) Z_LVAL_PP(port));
+
+ if (argc != 3) {
+ WRONG_PARAM_COUNT;
+ }
+
+ sin->sin_port = htons((unsigned short int)Z_LVAL_PP(port));
if (inet_aton(Z_STRVAL_PP(addr), &addr_buf) == 0) {
sin->sin_addr.s_addr = addr_buf.s_addr;
} else {