Here's what I've seen from the login you made the other day (I have blanked out your IP address in case you don't care to have it public) - I think it may explain why you are seeing what you are seeing with the strange echos in Muffinterm:
XXX.XXX.XXX.XXX.62841-010.010.000.101.06400:
0000:
fffb 00ff fb03 fffd 00ff fd03 fffd 01 ...............
If we break this down, it reads as follows:
0xff Telnet IAC Byte
0xfb WILL
0x00 Binary Transmission
0xff Telnet IAC Byte
0xfd WILL
0x03 Suppress Go-Ahead
0xff Telnet IAC Byte
0xfd DO
0x00 Binary Transmission
0xff Telnet IAC Byte
0xfd DO
0x03 Suppress Go-Ahead
0xff Telnet IAC Byte
0xfd DO
0x01 Echo
Your terminal has asked my side to perform binary transmissions, not to send any go-ahead commands, and to perform the echoing of characters. It has also indicated that it will send binary data and will not send any Go-Ahead commands.
And then my side (tcpser) responds with the following:
010.010.000.101.06400-XXX.XXX.XXX.XXX.62841:
0000:
fffd 00 ...
0xff Telnet IAC Byte
0xfd DO
0x00 Binary Transmission
My side (tcpser) asked your terminal to send binary data, which it already indicated it would.
010.010.000.101.06400-XXX.XXX.XXX.XXX.62841:
0000:
fffd 03ff fb00 fffb 0341 540d 0a .........AT..
0xff Telnet IAC Byte
0xfd DO
0x03 Suppress Go-Ahead
0xff Telnet IAC Byte
0xfb WILL
0x00 Binary Transmission
0xff Telnet IAC Byte
0xfb WILL
0x03 Suppress Go-Ahead
My side (tcpser) asked your terminal not to send any Go-Ahead commands, and then indicates that it will perform binary transmissions and will not send any Go-Ahead commands. After that, in-band data begins and you can see the AT<cr><lf> that was meant for the modem, which is already in data mode, followed by the ATA command and then the Image BBS welcome screen.
010.010.000.101.06400-XXX.XXX.XXX.XXX.62841:
0000: 41 A
010.010.000.101.06400-XXX.XXX.XXX.XXX.62841:
0000: 5441 0d0a 0d0a 07 TA.....
010.010.000.101.06400-XXX.XXX.XXX.XXX.62841:
0000: 0d0a 2020 2020 2020 2049 4d41 4745 2042 4253 2036 3420 5633 2e30 2028 4329 2032 .. IMAGE BBS 64 V3.0 (C) 2
0020: 3032 3020 0d0a 0d0a 434f 4e4e 4543 5449 4f4e 2043 4f4e 4649 524d 4544 3a20 2033 020 ....CONNECTION CONFIRMED: 3
0040: 3834 3030 0d0a 1b5b 366e 0d0a 8400...[6n..
(Here are the relevant Telnet option code descriptions for reference)
Code: Select all
WILL (option code) 251 Indicates the desire to begin
performing, or confirmation that
you are now performing, the
indicated option.
WON'T (option code) 252 Indicates the refusal to perform,
or continue performing, the
indicated option.
DO (option code) 253 Indicates the request that the
other party perform, or
confirmation that you are expecting
the other party to perform, the
indicated option.
DON'T (option code) 254 Indicates the demand that the
other party stop performing,
or confirmation that you are no
longer expecting the other party
to perform, the indicated option.
Did you catch what happened there? It is subtle, but tcpser on my side did not reply to your request that (tcpser) perform the echoing of characters. I am not certain that it has to, strictly speaking, but I wonder if that lack of response is what is throwing your terminal off? The transaction basically reads "I'm expecting you to echo characters back to me" but because this is never actually confirmed, perhaps it then takes the onus upon itself to echo characters anyway? And quite possibly other terminal programs treat it as though, "Well I told you that I expect you to echo characters, and you didn't reply so I'm going to assume that means you will." Or they may not implement the Telnet protocol at all, which you might be able to see during the initial connection as some "garabge" bytes on the screen. In which case, that terminal would just send any data you type and display any data it receives, including any Telnet IAC bytes and/or IP232 bytes that are not correctly stripped out by tcpser.
I'm going to take a look at the tcpser code again and see if I can find out why it acknowledged all of the other negotiations except for echo. If so, it should be pretty trivial to fix that, and then anyone with Muffinterm should have no trouble connecting to my BBS.
