When sending terminal modes in a pty request, SSH-1 and SSH-2 both specify a portable representation for a disabled special character, being the value 255. However, ttymodes.c just copies the local representation onto the wire and back again. So OpenSSH interoperates with itself between homogeneous platforms, but not with conforming implementations; for instance, from another client to OpenSSH on Linux (where _POSIX_VDISABLE appears to be '\0'): client$ stty -a [...] eol = <undef>; eol2 = <undef>; [...] server$ stty -a [...] eol = M-^?; eol2 = M-^?; [...] The attached patch against 4.0p1 fixes this for systems where _POSIX_VDISABLE is defined. Compiled and tested on Linux.
Created attachment 893 [details] _POSIX_VDISABLE patch for 4.0p1
Patch applied - it will be in openssh-4.2 BTW this happened to work on OpenBSD because _POSIX_VDISABLE is defined there as 255 :)
Change all RESOLVED bug to CLOSED with the exception of the ones fixed post-4.4.