cvs: php4 /ext/sockets sockets.c

From: 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 {

« previous php.cvs (#1335) next »