#37721 [Opn->Fbk]: socket_recv() don't returns expected value when useing some flags
| From: | tony2001@php.net | Date: | Tue, 06 Jun 2006 22:20:48 +0000 |
| Subject: | #37721 [Opn->Fbk]: socket_recv() don't returns expected value when useing some flags | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-98110@lists.php.net to get a copy of this message | ||
ID: 37721
Updated by: tony2001@php.net
Reported By: krzycho at wapp dot pl
-Status: Open
+Status: Feedback
Bug Type: Sockets related
Operating System: FreeBSD 5.4-R
PHP Version: 4.4.2
New Comment:
Care to add expected and actual results?
Previous Comments:
------------------------------------------------------------------------
[2006-06-06 22:13:21] krzycho at wapp dot pl
Description:
------------
some flags don't work correctly, cause returned value is not value
returned by the recv() function...
some flags work correct(ex. MSG_PEEK), cause it don't modify value
returned by the recv.
sockets.c (line 322): m = recv(bsd_socket, (void *) t, 1, flags);
sockets.c (line 341): return n;
should be when we use some flags: return m;
Reproduce code:
---------------
define("MSG_OOB", 1);
define("MSG_PEEK", 2);
define("MSG_DONTROUTE", 4);
define("MSG_EOR", 8);
define("MSG_TRUNC", 16);
define("MSG_CTRUNC", 32);
define("MSG_WAITALL", 64);
$flag=socket_recv($read, $data, 1024, MSG_TRUNC);
echo $flag;
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=37721&edit=1