diff options
author | Chris Luke <chrisy@flirble.org> | 2018-06-10 13:42:45 -0400 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2018-06-10 19:54:26 +0000 |
commit | 01dc6b968aa1bfa9deea9917b3b45b89c80f6a24 (patch) | |
tree | 1d12bbae38dcefe701666fafdac6d332029ff6fb | |
parent | fc379d28ab06760c8dcf0d976a5b224f1b062b97 (diff) |
cli: Disable XON/XOFF in the tty
- CLI history forward-search is bound to ^S which is common, but
that is also the tty's default control byte to pause output.
So we disable XON/XOFF in the tty so that we can use ^S.
Change-Id: I61717c77a11733d64eed7f8119677e7cd2e20029
Signed-off-by: Chris Luke <chrisy@flirble.org>
-rw-r--r-- | src/vlib/unix/cli.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/vlib/unix/cli.c b/src/vlib/unix/cli.c index 6c49d80aabd..727b9544854 100644 --- a/src/vlib/unix/cli.c +++ b/src/vlib/unix/cli.c @@ -2927,8 +2927,12 @@ unix_cli_config (vlib_main_t * vm, unformat_input_t * input) tio = um->tio_stdin; /* echo off, canonical mode off, ext'd input processing off */ tio.c_lflag &= ~(ECHO | ICANON | IEXTEN); + /* disable XON/XOFF, so ^S invokes the history search */ + tio.c_iflag &= ~(IXON | IXOFF); tio.c_cc[VMIN] = 1; /* 1 byte at a time */ tio.c_cc[VTIME] = 0; /* no timer */ + tio.c_cc[VSTOP] = _POSIX_VDISABLE; /* not ^S */ + tio.c_cc[VSTART] = _POSIX_VDISABLE; /* not ^Q */ tcsetattr (STDIN_FILENO, TCSAFLUSH, &tio); /* See if we can do ANSI/VT100 output */ |