From: Peter Hurley Date: Sun, 10 Jan 2016 06:55:37 +0000 (-0800) Subject: tty: audit: Check audit enable first X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=f17c3662745ea5fd4510c3dff19f9975552e1865;p=openwrt%2Fstaging%2Fblogic.git tty: audit: Check audit enable first Audit is unlikely to be enabled; check first to exit asap. Signed-off-by: Peter Hurley Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/tty_audit.c b/drivers/tty/tty_audit.c index 6e33e41ec74d..269e41f45832 100644 --- a/drivers/tty/tty_audit.c +++ b/drivers/tty/tty_audit.c @@ -211,6 +211,10 @@ void tty_audit_add_data(struct tty_struct *tty, const void *data, size_t size) unsigned int audit_tty; dev_t dev; + audit_tty = READ_ONCE(current->signal->audit_tty); + if (~audit_tty & AUDIT_TTY_ENABLE) + return; + if (unlikely(size == 0)) return; @@ -218,9 +222,6 @@ void tty_audit_add_data(struct tty_struct *tty, const void *data, size_t size) && tty->driver->subtype == PTY_TYPE_MASTER) return; - audit_tty = READ_ONCE(current->signal->audit_tty); - if (~audit_tty & AUDIT_TTY_ENABLE) - return; if ((~audit_tty & AUDIT_TTY_LOG_PASSWD) && icanon && !L_ECHO(tty)) return;