2.2.0
2.2.0
- bugfix: workaround for Microsoft Telnet client crash on
SB NEW_ENVIRON SEND, #24. Server now defers
DO NEW_ENVIRONuntil TTYPE cycling identifies the client, skipping it
entirely for MS Telnet (ANSI/VT100). - bugfix: in handling of LINEMODE FORWARDMASK command bytes.
- bugfix: SLC fingerprinting byte handling.
- bugfix: send IAC GA (Go-Ahead) after prompts when SGA is not negotiated.
Fixes hanging for MUD clients like Mudlet. PTY shell uses a 500ms idle
timer. Use--never-send-gato suppress like old behavior. - performance: with 'smarter' negotiation, default
connect_maxwait
reduced from 4.0s to 1.5s. - performance: both client and server protocol data_received methods
have approximately ~50x throughput improvement in bulk data transfers. - new:
Serverclass returned bycreate_server()with
wait_for_client()method andclientsproperty for tracking
connected clients. - new:
TelnetWriter.wait_for()andwait_for_condition()
methods for waiting on telnet option negotiation state. - new:
telnetlib3.syncmodule with blocking (non-asyncio) APIs:
TelnetConnectionfor clients,BlockingTelnetServerfor servers. - new:
pty_shellmodule and demonstratingtelnetlib3-server --pty-execCLI argument
and related--pty-rawserver CLI option for raw PTY mode, used by most
programs that handle their own terminal I/O. - new:
guard_shellsmodule with--robot-checkand--pty-fork-limit
CLI arguments for connection limiting and bot detection. - new:
fingerprintingmodule for telnet client identification and
capability probing. - new:
--send-environclient CLI option to control which environment
variables are sent via NEW_ENVIRON. Default no longer includes HOME or
SHELL.