Telnet linebreaks

Patrick M. Nielsen thirsteh at gmail.com
Tue May 23 18:49:54 EDT 2006


Oh, and, apologies for the "inpythonic" nature of this issue.

On 5/24/06, Patrick M. Nielsen <thirsteh at gmail.com> wrote:
>
> Hey guys.
>
> I have begun playing with the Simple MUD server example from the Stackless
> website
> ( http://www.stackless.com/Members/rmtew/code/mud.py )
> and it's all good so far, however, I've come to notice something that I
> remember from back
> in the days (some old mud code), but I don't remember what I did to fix
> it.
>
> While the MUD reads lines from Telnet clients just fine, clients such as
> Gmud are practically ignored,
> probably because Gmud doesn't send Telnet-valid data ('\x08'?).
>
> However, a MUD that is not accessible to one such client or others isn't
> much good, so I'd appreciate
> some help in pinpointing the problem.
>
> These are the code blocks that need modification (I believe)
>
>     def read(self): # TELNET
>         ret = self.readChannel.receive()
>         if self.echo:
>             if ret == '\x08':
>                 self.send(ret+" ")
>             self.send(ret)
>         return ret
>
>     def readline(self): # TELNET
>         buf = self.readBuffer
>
>         while True:
>             if buf.find('\r\n') > -1: # MUD clients that aren't using the
> telnet protocol
>                 i = buf.index('\r\n') # need to be able to do stuff.
>                 ret = buf[:i+2]
>                 self.readBuffer = buf[i+2:]
>                 while '\x08' in ret:
>                     i = ret.index('\x08')
>                     if i == 0:
>                         ret = ret[1:]
>                     else:
>                         ret = ret[:i-1]+ret[i+1:]
>                 return ret
>
>             buf += self.read()
>
> I'm suspecting that Gmud doesn't send '\x08', since from looking at some
> old DIKU code,
> I see that the if '\n' || '\r' are there as well, but there is no check
> for '\x08'. If this is indeed
> the cause of my problem, how would I go about doing it?
>
> Thanks in advance.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20060524/7af8512c/attachment.html>


More information about the Python-list mailing list