Wrong role in telnet CHARSET negotiation

Posted by Myonara on Sun 05 May 2019 04:55 PM — 3 posts, 14,557 views.

#0
In https://github.com/nickgammon/mushclient/issues/47 the following issue is described:

MUSHClient sends IAC WILL CHARSET and expects the MUD to start the IAC SB CHARSET subnegotiation. But according to RFC 2066 (https://tools.ietf.org/html/rfc2066) about the IAC SB CHARSET REQUEST message:

This message initiates a new CHARSET subnegotiation. It can only be sent by a side that has received a DO CHARSET message and sent a WILL CHARSET message (in either order).

So either MUSHClient should send a IAC DO CHARSET and wait for the server to send the SB or send the IAC WILL CHARSET and start itself the SB.
Australia Forum Administrator #1
I have responded to the issue on GitHub.
Australia Forum Administrator #2
That seems to be a fairly minor fix, as the actual negotiation part is unchanged. The client now supports receiving IAC WILL CHARSET and responding IAC DO CHARSET, as well as the original behaviour of receiving IAC DO CHARSET and responding IAC WILL CHARSET in order to support servers that are used to the old way.

I believe I have fixed that in version 5.07 (pre-release) which you can download following the instructions here:

http://www.gammon.com.au/forum/?id=13903

Fix details:

https://github.com/nickgammon/mushclient/commit/662585f