Subject: 7 bit problem
To: None <current-users@NetBSD.org>
From: D'Arcy J.M. Cain <darcy@druid.com>
List: current-users
Date: 11/07/1994 17:10:58
Solved!

Here it is.  The compatibility stuff fooled around with some bits,
in particular the PASS8 bit, to convert calls from sgtty style calls
to termios style calls.  The problem was that it was depending on
a previous set call to set the bits but when the first sgtty call
was TIOGETP then the bits didn't get set and the subsequent TIOCSETP
or TIOCSETN calls didn't see that CS8 should have been set.  The
fix was to delete line 263 in .../sys/kern/tty_compat.c (and re-indent
to taste) thus causing PASS8 to be set whenever parity was disabled.
The assumption is that CS7 implies parity on and CS8 implies no parity.
It seems to work so far.

Many thanks for everyone's help especially Mike Long who pointed me to
the sgtty stuff and hence to the compatibility routines.  Also thanks to
all the others who posted and emailed their suggestions.  I will be
sending in a problem report in a day or two after making sure that
nothing else was affected.

-- 
D'Arcy J.M. Cain (darcy@druid.com)  |
Planix, Inc.                        |   Democracy is three wolves and a
Toronto, Ontario, Canada            |   sheep voting on what's for dinner.
+1 416 424 2871  (DoD#0082) (eNTP)  |