tty_audit: invert the condition in tty_audit_log()
authorJiri Slaby <jirislaby@kernel.org>
Wed, 21 Jun 2023 10:16:08 +0000 (12:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Jun 2023 15:57:29 +0000 (17:57 +0200)
If we cannot obtain an audit buffer in tty_audit_log(), simply return
from the function. Apart this is mostly preferred in the kernel, it
allows to merge the split audit string while still keeping it readable.

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/20230621101611.10580-4-jirislaby@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/tty_audit.c

index 43f3446..c6c27ac 100644 (file)
@@ -66,20 +66,20 @@ static void tty_audit_log(const char *description, dev_t dev,
        uid_t uid = from_kuid(&init_user_ns, task_uid(current));
        uid_t loginuid = from_kuid(&init_user_ns, audit_get_loginuid(current));
        unsigned int sessionid = audit_get_sessionid(current);
+       char name[TASK_COMM_LEN];
 
        ab = audit_log_start(audit_context(), GFP_KERNEL, AUDIT_TTY);
-       if (ab) {
-               char name[TASK_COMM_LEN];
-
-               audit_log_format(ab, "%s pid=%u uid=%u auid=%u ses=%u major=%d"
-                                " minor=%d comm=", description, pid, uid,
-                                loginuid, sessionid, MAJOR(dev), MINOR(dev));
-               get_task_comm(name, current);
-               audit_log_untrustedstring(ab, name);
-               audit_log_format(ab, " data=");
-               audit_log_n_hex(ab, data, size);
-               audit_log_end(ab);
-       }
+       if (!ab)
+               return;
+
+       audit_log_format(ab, "%s pid=%u uid=%u auid=%u ses=%u major=%d minor=%d comm=",
+                        description, pid, uid, loginuid, sessionid,
+                        MAJOR(dev), MINOR(dev));
+       get_task_comm(name, current);
+       audit_log_untrustedstring(ab, name);
+       audit_log_format(ab, " data=");
+       audit_log_n_hex(ab, data, size);
+       audit_log_end(ab);
 }
 
 /*