[Home] [Downloads] [Search] [Help/forum]

Gammon Software Solutions forum

See www.mushclient.com/spam for dealing with forum spam. Please read the MUSHclient FAQ!

[Folder]  Entire forum
-> [Folder]  MUSHclient
. -> [Folder]  Bug reports
. . -> [Subject]  MUSHclient may disconnect before all output has been received

Home  |  Users  |  Search  |  FAQ
Username:
Register forum user name
Password:
Forgotten password?

MUSHclient may disconnect before all output has been received

[Reply to this subject]  Reply to this subject   [New subject]  Start a new subject   [Refresh] Refresh page


Pages: 1  2  3 

Posted by Nick Gammon   Australia  (18,770 posts)  [Biography] bio   Forum Administrator
Date Reply #30 on Tue 09 Feb 2010 12:22 AM (UTC)  quote  ]

Amended on Tue 09 Feb 2010 12:26 AM (UTC) by Nick Gammon

Message
Well I can reproduce your problem, not quite sure why:


MUD: Enter an option or enter your character's name. \ff\f9\ff\fe\19\ff\fd\c8\ff\fdV\ff\fc\19\ff\faV\ff\f0

Me: 1

MUD: What is the name you are known by in Achaea? > \ff\f9 

Me: name deleted

MUD: What is your password? \ff\f9 

Me: password deleted

MUD: \ff\fb\01\ff\fc\01Password correct. Welcome to Achaea.


Notice the sequence of events: It asks the password followed by IAC GA.

I reply (echoed).

It then sends IAC WILL 01 (turn echo off).
Then in the same packet it sends IAC WONT 01 (turn echo on).
It then sends "Password correct."

So in that packet sequence, it is turning echo off at the wrong moment.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (18,770 posts)  [Biography] bio   Forum Administrator
Date Reply #31 on Tue 09 Feb 2010 01:18 AM (UTC)  quote  ]

Amended on Tue 09 Feb 2010 01:27 AM (UTC) by Nick Gammon

Message
OK, I think I have worked it out.

Version 4.48:


Enter an option or enter your character's name. <IAC><GA>
<IAC><DONT><EOR><IAC><DONT><200><IAC><DONT><MCCP>
1
<IAC><WONT><EOR><IAC><WONT><200><IAC><WONT><MCCP>
What is the name you are known by in Achaea? > <IAC><GA>
<IAC><DONT><EOR><IAC><DONT><200><IAC><DONT><MCCP>
name
What is your password? <IAC><GA>
<IAC><WILL><1>
password
<IAC><WONT><1>Password correct. Welcome to Achaea.



That works with Achaea, note that it sends <IAC><WILL><1> after asking for the password, so it isn't echoed.


Version 4.49:


Enter an option or enter your character's name. <IAC><GA>
<IAC><DONT><EOR><IAC><DONT><200><IAC><DO><MCCP>
<IAC><WONT><EOR><IAC><WONT><200><IAC><SB><MCCP><IAC><SE>
1
What is the name you are known by in Achaea? > <IAC><GA>
name
What is your password? <IAC><GA>
password
<IAC><WILL><1><IAC><WONT><1>Password correct. Welcome to Achaea.


This one doesn't work, it turns echo off too late.

However spot the difference? Version 4.48 doesn't turn on MCCP (because of the bug someone noted). So it is all done uncompressed.

Try this, turn compression off, and the password is suppressed correctly.

Try an earlier version of MUSHclient (before all the telnet negotiation changes) and see what happens if compression is on.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Nick Gammon   Australia  (18,770 posts)  [Biography] bio   Forum Administrator
Date Reply #32 on Tue 09 Feb 2010 01:55 AM (UTC)  quote  ]

Amended on Tue 09 Feb 2010 01:56 AM (UTC) by Nick Gammon

Message
Well I carefully stepped through it with the debugger. Although the problem point is around when compression is turned on, I don't believe MUSHclient is faulty here.

I confirmed we were in compressed mode by the time it asked for the name (and waited for a reply) (as you can see from the packet debug, where it asks for the name after sending <IAC><SB><MCCP><IAC><SE>), so it is not as if the transition from uncompressed to compressed is causing the problem per se.

This seems to me to relate to the other problem with Achaea, where you don't see the final "goodbye" message after disconnecting. I speculated at the time they might not be flushing the compressed data, and this seems to me to be the same thing. Note what happens in decompressed mode:


What is your password? <IAC><GA>
<IAC><WILL><1>


So that final 3 bytes could still be in the compressed buffer at the server end. The zLib documentation recommends *against* flushing the buffer all the time, as that would cause a performance hit.

OTOH, they must flush the buffer when prompting for input, or you would probably miss every 2nd prompt.

My guess is, they flush the buffer after <IAC> <GA>, to make sure the player sees the prompt. So it would look like this:


What is your password? <IAC><GA> <flush>
<IAC><WILL><1>


In other words, they didn't flush after the <IAC><WILL><1>.

Also, the bug (see page 1 of this thread) where you don't see:


You feel your insides clench as your soul is frozen.
You have played 4095 games.

Goodbye for now!


... could be explained the same way. They aren't sending <IAC><GA> so they aren't flushing that final message.

I suggest a polite message to the Achaea admins along the lines of:


  • Please flush the zlib buffer after sending <IAC><WILL><1> after requesting the password.

  • Please flush the buffer after the final "Goodbye for now!" message.


That should fix your problems.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,229 posts)  [Biography] bio
Date Reply #33 on Tue 09 Feb 2010 01:58 AM (UTC)  quote  ]
Message
That sounds very plausible. Thanks again, Nick!

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


8,606 views.

This is page 3, subject is 3 pages long:  [Previous page]  1  2  3 

[Reply to this subject]  Reply to this subject   [New subject]  Start a new subject   [Refresh] Refresh page

Go to topic:           Search the forum


[Go to top] top

[Home]

Written by Nick Gammon - 5K

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( http://www.gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Internet Contents Rating Association (ICRA) - 2K]    [Web site powered by FutureQuest.Net]