Bug #10627: bind() fails
| From: | old dot wolf at project-w dot com | Date: | Thu, 03 May 2001 07:12:58 +0000 |
| Subject: | Bug #10627: bind() fails | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-53517@lists.php.net to get a copy of this message | ||
From: old.wolf@project-w.com
Operating system: Solaris 2.7
PHP version: 4.0.5
PHP Bug Type: Sockets related
Bug description: bind() fails
The sample code on the online documentation fails. Here is a shorter example which fails in the same
way:
$s = socket(AF_INET, SOCK_STREAM, 0);
$err = bind($s, "192.168.1.2", 44444);
if ($err)
die(strerror($err));
reports: Address family not supported by protocol family.
The same thing happens for other values of address and port, or using protocol 6 instead of 0.
I noticed that it is possible to call listen() without successfully calling bind(), in which case
the socket listens correctly on a random port number. (is this intentional?)
I also tried using the undocumented function open_listen_sock() instead (with the CGI version of php
invoked from the shell), which works once but then fails on future invocations with the same port
number, even though the socket and its accepted sockets were closed properly with close().
My configure line:
./configure --with-mcrypt --with-mhash --with-mysql=../../mysql --with-gd --enable-versioning
--with-ttf --enable-debug --enable-shared --enable-freetype-4bit-antialias-hack --with-informix
--with-bz2 --with-gmp --with-zlib --with-config-file-path=/usr/local/lib/cgiphp.ini --enable-sockets
--
Edit Bug report at: http://bugs.php.net/?id=10627&edit=1