Re: TCP Broken

Theodore Y. Ts'o (tytso@MIT.EDU)
Tue, 4 Mar 1997 14:31:28 -0500


Linus discovered the problem; it was my mistake while converting the
memory access routines in tty_ioctl.c.....

- Ted

diff -u --recursive --new-file v2.1.28/linux/drivers/char/tty_ioctl.c linux/drivers/char/tty_ioctl.c
--- v2.1.28/linux/drivers/char/tty_ioctl.c Tue Mar 4 10:25:23 1997
+++ linux/drivers/char/tty_ioctl.c Tue Mar 4 10:18:16 1997
@@ -503,13 +503,16 @@
(real_tty->termios_locked,
(struct termios *) arg);
case TIOCPKT:
+ {
+ int pktmode;
+
if (tty->driver.type != TTY_DRIVER_TYPE_PTY ||
tty->driver.subtype != PTY_TYPE_MASTER)
return -ENOTTY;
- retval = get_user(retval, (int *) arg);
+ retval = get_user(pktmode, (int *) arg);
if (retval)
return retval;
- if (retval) {
+ if (pktmode) {
if (!tty->packet) {
tty->packet = 1;
tty->link->ctrl_status = 0;
@@ -517,6 +520,7 @@
} else
tty->packet = 0;
return 0;
+ }
/* These two ioctl's always return success; even if */
/* the driver doesn't support them. */
case TCSBRK: case TCSBRKP: