Subj : Telnetd To : All From : Bo Simonsen Date : Sat Feb 27 2010 10:11 am Hi all, According to the telnet standard a new line is send by and just a plain carrige return is send by \0. However it seems like some clients are just sending or the raw-\0 is lost somewhere. So my current "algorithm" for reading one char is the following. 1. Read one character from the socket. 2. If this char is not \r return the character to the BBS. 3. If it is \r, then use select() with tv.sec/tv.usec=0, and if FD_ISSET is true then read one charecter. Return the \r in both cases. Is this the correct way? It seems to work with almost all clients. Notice that this code does not apply to zmodem filetransfers and other stuff. Bo .... Direct from the Ministry of Silly Walks ___ MultiMail/Linux v0.49 --- DayDream BBS/Linux 2.15a (Grab QWK Door) * Origin: The Night Express. Running Daydream/Linux. (2:236/100) .