Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are
spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the
password reset link.
Due to spam on this forum, all posts now need moderator approval.
Entire forum
➜ MUSHclient
➜ Bug reports
➜ MUSHclient may disconnect before all output has been received
|
MUSHclient may disconnect before all output has been received
|
It is now over 60 days since the last post. This thread is closed.
Refresh page
Pages: 1
2
3
| Posted by
| Nick Gammon
Australia (23,166 posts) Bio
Forum Administrator |
| Date
| Reply #30 on Tue 09 Feb 2010 12:22 AM (UTC) 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 | | Top |
|
| Posted by
| Nick Gammon
Australia (23,166 posts) Bio
Forum Administrator |
| Date
| Reply #31 on Tue 09 Feb 2010 01:18 AM (UTC) 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 | | Top |
|
| Posted by
| Nick Gammon
Australia (23,166 posts) Bio
Forum Administrator |
| Date
| Reply #32 on Tue 09 Feb 2010 01:55 AM (UTC) 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 | | Top |
|
| Posted by
| Twisol
USA (2,257 posts) Bio
|
| Date
| Reply #33 on Tue 09 Feb 2010 01:58 AM (UTC) |
| Message
| | That sounds very plausible. Thanks again, Nick! |
'Soludra' on Achaea
Blog: http://jonathan.com/
GitHub: http://github.com/Twisol | | 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.
116,979 views.
This is page 3, subject is 3 pages long:
1
2
3
It is now over 60 days since the last post. This thread is closed.
Refresh page
top