diff options
| author | christos <christos@NetBSD.org> | 2013-06-02 13:18:12 +0000 |
|---|---|---|
| committer | christos <christos@NetBSD.org> | 2013-06-02 13:18:12 +0000 |
| commit | 4c9427c0d204d60629f504fa9c0c2bfcf8337ffc (patch) | |
| tree | 2068210e0cc65a04702b2542bcfe2c30a4266f7b /usr.bin/tip | |
| parent | 0f855662d547cc255d411d4d3a7e08ec4799d035 (diff) | |
PR/47877: Michael van Elst: Disable and enable software flow control properly
Diffstat (limited to 'usr.bin/tip')
| -rw-r--r-- | usr.bin/tip/cmds.c | 12 | ||||
| -rw-r--r-- | usr.bin/tip/tip.c | 8 |
2 files changed, 11 insertions, 9 deletions
diff --git a/usr.bin/tip/cmds.c b/usr.bin/tip/cmds.c index 4449b994ba2..0e67c384008 100644 --- a/usr.bin/tip/cmds.c +++ b/usr.bin/tip/cmds.c @@ -1,4 +1,4 @@ -/* $NetBSD: cmds.c,v 1.35 2012/02/24 16:03:39 joerg Exp $ */ +/* $NetBSD: cmds.c,v 1.36 2013/06/02 13:18:12 christos Exp $ */ /* * Copyright (c) 1983, 1993 @@ -34,7 +34,7 @@ #if 0 static char sccsid[] = "@(#)cmds.c 8.1 (Berkeley) 6/6/93"; #endif -__RCSID("$NetBSD: cmds.c,v 1.35 2012/02/24 16:03:39 joerg Exp $"); +__RCSID("$NetBSD: cmds.c,v 1.36 2013/06/02 13:18:12 christos Exp $"); #endif /* not lint */ #include "tip.h" @@ -792,11 +792,11 @@ tandem(const char *option) (void)tcgetattr(FD, &rmtty); if (strcmp(option, "on") == 0) { - rmtty.c_iflag |= IXOFF; - term.c_iflag |= IXOFF; + rmtty.c_iflag |= IXON|IXOFF|IXANY; + term.c_iflag |= IXON|IXOFF|IXANY; } else { - rmtty.c_iflag &= ~IXOFF; - term.c_iflag &= ~IXOFF; + rmtty.c_iflag &= ~(IXON|IXOFF|IXANY); + term.c_iflag &= ~(IXON|IXOFF|IXANY); } (void)tcsetattr(FD, TCSADRAIN, &rmtty); (void)tcsetattr(0, TCSADRAIN, &term); diff --git a/usr.bin/tip/tip.c b/usr.bin/tip/tip.c index 2c701845cc9..207ee5403f8 100644 --- a/usr.bin/tip/tip.c +++ b/usr.bin/tip/tip.c @@ -1,4 +1,4 @@ -/* $NetBSD: tip.c,v 1.51 2011/09/06 18:33:01 joerg Exp $ */ +/* $NetBSD: tip.c,v 1.52 2013/06/02 13:18:12 christos Exp $ */ /* * Copyright (c) 1983, 1993 @@ -42,7 +42,7 @@ __COPYRIGHT("@(#) Copyright (c) 1983, 1993\ #if 0 static char sccsid[] = "@(#)tip.c 8.1 (Berkeley) 6/6/93"; #endif -__RCSID("$NetBSD: tip.c,v 1.51 2011/09/06 18:33:01 joerg Exp $"); +__RCSID("$NetBSD: tip.c,v 1.52 2013/06/02 13:18:12 christos Exp $"); #endif /* not lint */ /* @@ -496,7 +496,9 @@ ttysetup(speed_t spd) cntrl.c_cc[VMIN] = 1; cntrl.c_cc[VTIME] = 0; if (boolean(value(TAND))) - cntrl.c_iflag |= IXOFF; + cntrl.c_iflag |= IXOFF|IXON|IXANY; + else + cntrl.c_iflag &= ~(IXOFF|IXON|IXANY); return tcsetattr(FD, TCSAFLUSH, &cntrl); } |
