Bug 1025

Summary: Does not correctly send/parse disabled special character in ttymodes
Product: Portable OpenSSH Reporter: Jacob Nevins <jacobn+mindrot>
Component: sshdAssignee: OpenSSH Bugzilla mailing list <openssh-bugs>
Status: CLOSED FIXED    
Severity: normal    
Priority: P2    
Version: 4.0p1   
Hardware: All   
OS: All   
Attachments:
Description Flags
_POSIX_VDISABLE patch for 4.0p1 none

Description Jacob Nevins 2005-04-21 20:29:20 AEST
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.
Comment 1 Jacob Nevins 2005-04-21 20:30:30 AEST
Created attachment 893 [details]
_POSIX_VDISABLE patch for 4.0p1
Comment 2 Damien Miller 2005-08-16 21:33:00 AEST
Patch applied - it will be in openssh-4.2

BTW this happened to work on OpenBSD because _POSIX_VDISABLE is defined there as
255 :)
Comment 3 Darren Tucker 2006-10-07 11:39:55 AEST
Change all RESOLVED bug to CLOSED with the exception of the ones fixed post-4.4.