From b84a3294384cb9250f594be50ddfe22c80a003b6 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 20 May 2020 14:57:21 +0100 Subject: [PATCH] jail: use sane termios settings for console pts MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The previously used expression (inpired by LXC) didn't actually make a lot of sense. Replace it with something inspired by a more recent version of LXC... Reported-by: Oldřich Jedlička Signed-off-by: Daniel Golle --- jail/console.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/jail/console.c b/jail/console.c index 75ce9c5..d03edc5 100644 --- a/jail/console.c +++ b/jail/console.c @@ -38,11 +38,12 @@ static inline int setup_tios(int fd, struct termios *oldtios) newtios = *oldtios; - /* Remove the echo characters and signal reception, the echo - * will be done with master proxying */ - newtios.c_iflag &= ~IGNBRK; - newtios.c_iflag &= BRKINT; - newtios.c_lflag &= ~(ECHO|ICANON|ISIG); + /* We use the same settings that ssh does. */ + newtios.c_iflag |= IGNPAR; + newtios.c_iflag &= ~(ISTRIP | INLCR | IGNCR | ICRNL | IXON | IXANY | IXOFF); + newtios.c_lflag &= ~(TOSTOP | ISIG | ICANON | ECHO | ECHOE | ECHOK | ECHONL); + newtios.c_oflag &= ~ONLCR; + newtios.c_oflag |= OPOST; newtios.c_cc[VMIN] = 1; newtios.c_cc[VTIME] = 0; -- 2.25.1