gnu@sun.uucp (John Gilmore) (01/23/85)
> When I rlogin to one of our 4.2bsd Vaxs and do a "stty raw", it seems > that ^S and ^Q don't get picked up on the remote machine. ... > Also, rlogin to a 1.2 SUN from a 4.2 Vax does pass ^S/^Q to the remote (the > SUN), so it seems like a problem with reception rather than transmission > on the Vax. > Is this a bug or a feature? Does anybody have a fix for this? As you pointed out, we fixed the problem. It was in the packet pty driver. It's supposed to tell the master side of the interface when the stop/start characters are ^S/^Q or aren't. When the slave side of the pty goes into raw mode, it stops having stop/start chars, but the pty didn't tell the master this, so the rlogind never told the rlogin on the local machine to stop intercepting flow control. Here's our fix: % ssd -r1.5 -r1.6 tty_pty.c 480c480,481 < { int stop = (tp->t_stopc == ('s'&037) && tp->t_startc == ('q'&037)); --- > { int stop = ((tp->t_flags & RAW) == 0 && > tp->t_stopc == ('s'&037) && tp->t_startc == ('q'&037)); 483c484 < pti->pt_send &= TIOCPKT_NOSTOP; --- > pti->pt_send &= ~TIOCPKT_NOSTOP;