|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2003-02-05 13:29 UTC] pollita@php.net
[2003-02-05 17:14 UTC] talmage at usi-rpg dot com
[2003-02-05 18:32 UTC] pollita@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Nov 01 13:00:01 2025 UTC |
I followed the instructions on all the manuals and tried searching the inet, but couldent find anything that solved this. I have a socket that is supposed to read from a client (this is a smtpd server-type script).. When I use while ($line = socket_read($my_socket,2048,PHP_NORMAL_READ)) { stuff } I can connect to this server via win32 putty, and it will break on line breaks. But when using Linux telnet and trying to get other smtpd's to send to it, they would have to send 2048 bytes to get stuff to execute once. To make sure they were sending \r or \n I made the socket read go byte by byte and assemble a string, checking for \n or \r while($tstr = socket_read($connection,1)) { if (($tstr != chr(13)) && ($tstr != chr(10))) { $buf .= $tstr; continue; } ^^Example of my byte-by-byte checker It does find \r and \n in the strings and I am able to gte my server to work... Would be nice if the built in function socket_read would really break on \n or \r. If more information is needed, please ask....