Re: [PATCH] tty: Only hangup once

From: Heorhi Valakhanovich
Date: Tue Nov 19 2013 - 12:20:10 EST


On Tue, 19 Nov 2013 08:46:27 -0500
Peter Hurley <peter@xxxxxxxxxxxxxxxxxx> wrote:

> Would you please test the patch below and confirm the fix?
>
> --->%---
> Subject: [PATCH] tty: Reset hupped state on open
>
> A common security idiom is to hangup the current tty (via vhangup())
> after forking but before execing a root shell. This hangs up any
> existing opens which other processes may have and ensures subsequent
> opens have the necessary permissions to open the root shell tty/pty.
>
> Reset the TTY_HUPPED state after the driver has successfully
> returned the opened tty (perform the reset while the tty is locked
> to avoid racing with concurrent hangups).
>
> Reported-by: Heorhi Valakhanovich <valahanovich@xxxxxx>
> Signed-off-by: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
> ---
> drivers/tty/tty_io.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
> index 3a1a01a..c74a00a 100644
> --- a/drivers/tty/tty_io.c
> +++ b/drivers/tty/tty_io.c
> @@ -2086,6 +2086,7 @@ retry_open:
> filp->f_op = &tty_fops;
> goto retry_open;
> }
> + clear_bit(TTY_HUPPED, &tty->flags);
> tty_unlock(tty);
>
>

It looks like this patch works. It solves my problem. Thanks.
Will wait for such fix in mainline.

Heorhi.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/