Download: Stable · Snapshot | Docs | Changes | Wishlist
SSH (both SSH-1 and SSH-2) allows the client to specify the mode it wants server-side pseudo-terminals to be opened in. PuTTY does not currently specify any such information for either protocol apart from terminal speed.
I've always thought it would be nice to be able to configure this sort of thing locally, so that (for example) users connecting to the mono.org BBS could stop a single press of Ctrl-\ from sending a SIGQUIT and unexpectedly terminating their session.
Also, various servers do not have sane defaults for various terminal modes. (Neither SSH nor POSIX define any defaults; they leave them up to the implementation, so such servers are technically within their rights, although I (JTN) consider them buggy nonetheless.) Therefore PuTTY should probably send suitable values for certain modes by default, and in any case allow users to tweak them. (Often stty on the server can be used as a workaround, but some servers may not have this ability.)
Recently it was suggested to me that if the user has configured non-`auto' settings for local echo and/or local line editing, then perhaps PuTTY should deliberately send terminal modes which compensate for this on the server side? For example, if the user turns line editing off at the client end, we could send ICANON so that it's turned on at the server end; or conversely if the user enables local line editing we could send ~ICANON. It isn't remotely clear to me that this would be the right thing in all circumstances, though, so perhaps it would be better to leave it as a user-configurable option.
A complete UI for terminal modes would be a noticeable amount of work.
Configurable options in this area might also be directly usable by the pty back end in pterm.
Possibly also Telnet to some extent, since we can send WILL ECHO / WONT ECHO to announce an intention to do any echoing locally, and the server is expected to stop doing its own echoing if it thinks we're doing it ourselves. Perhaps that's better handled by separate UI, though.
Update, 2005-04-21: this is basically done. I haven't implemented any cleverness with echo or line editing (although doing so should now be a minimal amount of work), and it's SSH-only; nothing for pterm, or Telnet/Rlogin.