Bug #14740 Updated: fsockopen() won't timeout
| From: | jason@php.net | Date: | Tue, 11 Jun 2002 03:56:07 +0000 |
| Subject: | Bug #14740 Updated: fsockopen() won't timeout | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-10062@lists.php.net to get a copy of this message | ||
ID: 14740
Updated by: jason@php.net
Reported By: l0cky@sn0wmen.fsnet.co.uk
-Status: Assigned
+Status: Closed
Bug Type: Sockets related
Operating System: Win98 and Win2k
PHP Version: 4.1.0
Assigned To: jason@php.net
New Comment:
This bug has been fixed in CVS. You can grab a snapshot of the
CVS version at http://snaps.php.net/. In case this was a
documentation
problem, the fix will show up soon at http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2002-05-29 00:33:54] jason@php.net
Will work on fix, should be available shortly
-Jason
------------------------------------------------------------------------
[2002-03-22 13:54:22] jroberts@forumone.com
Note on the previous report -- setting an integer for timeout (e.g. 1)
does not change the behaviour. It still takes 3-4 seconds without
timing out.
------------------------------------------------------------------------
[2002-03-22 13:49:59] jroberts@forumone.com
System: RedHat Linux
PHP 4.0.6
I'm specifying a timeout of 0.2 seconds, but the fsockopen() function
is taking as long as 3-4 seconds with slow domains (I know
www.krasnapolsky.sr to be slow). This example took about 3.6 seconds.
CODE:
echo microtime();
echo fsockopen("www.krasnapolsky.sr", 80, &$errno,
&$errstr, 0.2);
echo microtime();
echo "Error Number = $errno, Error String = $errstr";
RESULT:
0.39859300 1016822517
Resource id #1
0.04482100 1016822521
Error Number = 0, Error String =
So the socket is opened -- it just took way longer than I intended to
allow it.
------------------------------------------------------------------------
[2002-02-12 17:13:35] jason@php.net
The Win32 code does not set a timeout. The comment at the end refers to
there being a problm on linux, which I could not reproduce.
Winsock does support non-blocking IO, but is set up quite differently
than BSD sockets.
-Jason
------------------------------------------------------------------------
[2002-02-11 15:40:27] salvag3@netscape.net
The timeout doesn't work if the host don't respond on the
requested port :-(
os: linux redhat 7.2
php 4.0.6-7
apache 1.3.20-16
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/14740
--
Edit this bug report at http://bugs.php.net/?id=14740&edit=1