TIOCSTI: always enable for CAP_SYS_ADMIN
83efeeeb3d
("tty: Allow TIOCSTI to be disabled") broke BRLTTY's ability to simulate keypresses on the console, thus effectively breaking braille keyboards of blind users. This restores the TIOCSTI feature for CAP_SYS_ADMIN processes, which BRLTTY is, thus fixing braille keyboards without re-opening the security issue. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Acked-by: Kees Cook <keescook@chromium.org> Fixes:83efeeeb3d
("tty: Allow TIOCSTI to be disabled") Cc: stable@vger.kernel.org Reported-by: Nicolas Pitre <nico@fluxnic.net> Link: https://lore.kernel.org/r/20230710002645.v565c7xq5iddruse@begin Acked-by: Jiri Slaby <jirislaby@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
fdf0eaf114
commit
690c8b804a
1 changed files with 1 additions and 1 deletions
|
@ -2285,7 +2285,7 @@ static int tiocsti(struct tty_struct *tty, char __user *p)
|
||||||
char ch, mbz = 0;
|
char ch, mbz = 0;
|
||||||
struct tty_ldisc *ld;
|
struct tty_ldisc *ld;
|
||||||
|
|
||||||
if (!tty_legacy_tiocsti)
|
if (!tty_legacy_tiocsti && !capable(CAP_SYS_ADMIN))
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|
||||||
if ((current->signal->tty != tty) && !capable(CAP_SYS_ADMIN))
|
if ((current->signal->tty != tty) && !capable(CAP_SYS_ADMIN))
|
||||||
|
|
Loading…
Add table
Reference in a new issue