Bug #8775 Updated: pfsockopen - socket_get_status has EOF set.. feof() returns false

From: Date: Wed, 21 Nov 2001 17:12:10 +0000
Subject: Bug #8775 Updated: pfsockopen - socket_get_status has EOF set.. feof() returns false
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-71264@lists.php.net to get a copy of this message
ID: 8775 Updated by: mfischer Reported By: seymour@foxvalley.net Old Status: Open Status: Feedback Bug Type: Sockets related Operating System: Linux PHP Version: 4.0.4pl1 New Comment: Can you try with latest RC and see if it works http://www.php.net/~zeev/php-4.1.0RC3.tar.gz Feedback. Previous Comments: ------------------------------------------------------------------------ [2001-01-20 12:09:09] seymour@foxvalley.net After further working with this, I have found that even if I keep all of my code within one script and never fclose() I'm still getting disconnected after all the data is read. I'm pretty sure that this is not related to my code. I verified via telnet that the server I'm connecting to does not close the connection. ------------------------------------------------------------------------ [2001-01-18 01:00:36] seymour@foxvalley.net i have found that socket_get_status will say that an EOF has occurred but feof() says otherwise (and the socket isn't disconnected). feof() seems to be working fine. im using pfsockopen() to create the socket. also, im seeing 0 bytes unread until i attempt reading once, then the correct number of bytes remaining are listed. this may be unrelated but once i have read all of the bytes remaining, i get a EOF (detected by feof() and the connection is toast after that point). it could be a bug somewhere in my scripts logic.. but who knows. System Linux 2.0.36 #4 Thu Aug 19 23:54:41 CDT 1999 i586 unknown Build Date Jan 15 2001 Configure Command './configure' '--with-mysql' '--with-apache=../apache_1.3.4' '--enable-track-vars' Server API Apache Virtual Directory Support disabled Configuration File (php.ini) Path /usr/local/lib ZEND_DEBUG disabled Thread Safety disabled code snippit: $stat = socket_get_status($socketptr); if ($stat["eof"] == 1) { if (!(feof($socketptr))) { print "socket_get_status lied?"; return true; } else { fclose($socketptr); print "REMOTE CLOSED CONNECTION<br>"; exit; } } ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=8775&edit=1

« previous php.dev (#71264) next »