ID: 21197 Updated by: [EMAIL PROTECTED] Reported By: bool at boolsite dot net Status: Assigned Bug Type: Sockets related Operating System: * PHP Version: 5.*, 4.* (2005-11-17) (cvs) Assigned To: jani New Comment:
The patch can be found at: http://pecl.php.net/~jani/patches/bug_21197_socket_read.patch Previous Comments: ------------------------------------------------------------------------ [2007-07-17 20:57:54] [EMAIL PROTECTED] I have a patch prepared for this. Just waiting for dinesh at dinsoft dot net to test it for me. :) ------------------------------------------------------------------------ [2007-06-23 22:23:06] dinesh at dinsoft dot net Indeed, it works with : //m = fcntl(bsd_socket, F_GETFL); //if (m < 0) { // return m; //} nonblock = 0; So the fcntl() call makes it fail. But this has the side effect of making the socket_read() call blocking even if the socket has been set to non blocking mode. I will try to make a fully working patch with no side effect when I'll have some time, if no one else is wanting to solve this problem. For the lambda users, here is a usuable dll built against PHP 5.2.3 : http://www.dinsoft.net/dev/php/php_sockets.dll Regards, Dinesh Bolkensteyn ------------------------------------------------------------------------ [2007-06-23 13:33:06] dinesh at dinsoft dot net Hi all, The bug is still there in: PHP 5.2.3 (cli) (built: May 31 2007 09:37:22) (binary zip release) The initial bug report was posted on 26 Dec 2002 9:32am UTC, almost 5 years ago. PHP_NORMAL_READ works well under *NIX, but the same scripts does not work on windows. If the above patch is working, then it should be added in the binary release. Thanks. ------------------------------------------------------------------------ [2006-11-15 06:33:38] thessoro at gmail dot com I think the existence of this bug should be mentioned in the documentation to prevent developers rely on PHP_NORMAL_READ. Although OS category is set to * i can only reproduce it in windows. I checked my script there too late. So, as a script relying this feature is capable of making the entire socket extension useless on Windows, i think is important enough to mention it en the socket_read section of the manual. Thx, ------------------------------------------------------------------------ [2005-11-05 22:10:22] [EMAIL PROTECTED] I've made a patch that implements the idea of my last comment. The test case now works properly. I haven't tested bug #35062 but it seems to be a different bug. http://mega.ist.utl.pt/~ncpl/php_sockets_win.txt ------------------------------------------------------------------------ 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/21197 -- Edit this bug report at http://bugs.php.net/?id=21197&edit=1
