ID: 23220 Updated by: [EMAIL PROTECTED] Reported By: storozhilov at mail dot ru -Status: Assigned +Status: Feedback Bug Type: Filesystem function related Operating System: FreeBSD 4.8 PHP Version: 4-STABLE-200307070330 Assigned To: wez New Comment:
Please try using this CVS snapshot: http://snaps.php.net/php4-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-STABLE-latest.zip I've just comitted a fix for feof() that might solve this problem too. Please try the next snapshot (dated after this notification) and let us know. Previous Comments: ------------------------------------------------------------------------ [2003-11-28 11:42:55] ddwyer at starband dot net Similar bug in PHP Win32 5.0B2 ------------------------------------------------------------------------ [2003-10-26 14:41:20] [EMAIL PROTECTED] Re-opening at user request. Users comments that have mysteriously vanished are: =================================================== See the code below to verify , I'm not able to alter php versions since it's hosted with my ISP so please test it with the latest version so it can be closed as being fixed or further investigation needed. <?php $method = "ssl://"; $host = "memberservices.passport.net"; $port = 443; $url = "/"; $file = fsockopen($method.$host,$port,$errno,$errstr,30); if(!$file) { print ("error"); exit; } fputs($file,"GET ".$url." HTTP/1.1\r\n"); fputs($file,"Host: ".$host."\r\n"); fputs($file,"Connection: Keep-Alive\r\n"); fputs($file,"Cache-Control: no-cache\r\n\r\n"); while(!feof($file)) { $output = fgets ($file, 1024); } fclose($file); ?> output: PHP Warning: fgets(): SSL: fatal protocol error in /path.to/test_ssl.php on line 18 Please put the bug to 'open'. ------------------------------------------------------------------------ [2003-10-08 07:30:39] [EMAIL PROTECTED] Could you try the next stable snapshot (due in a few minutes)? I comitted a fix for a different bug that might make a difference to this one. If it hasn't fixed it, could you post an https:// URL that reproduces the problem, so that I can investigate further? ------------------------------------------------------------------------ [2003-08-21 20:18:33] scottm at spamcop dot net I've not verified this patch will work and I'll hopefully test it tomorrow. I believe it is reaching the end of the file and nr_bytes is returning 0 and this is being caught by an if statement which should be looking for -1. --- network.c Thu Aug 21 21:06:43 2003 +++ network.c.patched Thu Aug 21 21:13:09 2003 @@ -1011,13 +1011,14 @@ do { nr_bytes = SSL_read(sock->ssl_handle, buf, count); - if (nr_bytes <= 0) { + if (nr_bytes < 0) { retry = handle_ssl_error(stream, nr_bytes TSRMLS_CC); if (retry == 0 && !SSL_pending(sock->ssl_handle)) { stream->eof = 1; } } else { - /* we got the data */ + /* we got the data */ + stream->eof = 1; break; } } while (retry); ------------------------------------------------------------------------ [2003-04-15 01:52:09] storozhilov at mail dot ru <?php $fd = fsockopen( 'ssl://www.somehost.com', 443, $errno, $errstr, 30 ); fputs($fd, "GET / HTTP/1.0\r\n\r\n"); while (!feof($fd)) { echo fgets($fd, 1024); ); ?> After executing of this script following message appears: Warning: fgets() [function.fgets]: SSL: fatal protocol error in /blah/blah/blah/blah.php on line NN PHP was configured with following arguments: #!/bin/sh ./configure --with-apache=../apache_1.3.27rusPL30.17 --with-mod_charset --with-pgsql=/usr/local/pgsql --with-mhash --with-sybase=/usr/local --with-openssl ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=23220&edit=1