Bug #14740 Updated: fsockopen() won't timeout

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

« previous php.bugs (#10062) next »