diff options
Diffstat (limited to 'kernel/auditsc.c')
| -rw-r--r-- | kernel/auditsc.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/kernel/auditsc.c b/kernel/auditsc.c index 7d0e3cf8abe1..62ab53d7619c 100644 --- a/kernel/auditsc.c +++ b/kernel/auditsc.c @@ -1980,6 +1980,7 @@ static void audit_log_set_loginuid(kuid_t koldloginuid, kuid_t kloginuid,  {  	struct audit_buffer *ab;  	uid_t uid, oldloginuid, loginuid; +	struct tty_struct *tty;  	if (!audit_enabled)  		return; @@ -1987,14 +1988,17 @@ static void audit_log_set_loginuid(kuid_t koldloginuid, kuid_t kloginuid,  	uid = from_kuid(&init_user_ns, task_uid(current));  	oldloginuid = from_kuid(&init_user_ns, koldloginuid);  	loginuid = from_kuid(&init_user_ns, kloginuid), +	tty = audit_get_tty(current);  	ab = audit_log_start(NULL, GFP_KERNEL, AUDIT_LOGIN);  	if (!ab)  		return;  	audit_log_format(ab, "pid=%d uid=%u", task_pid_nr(current), uid);  	audit_log_task_context(ab); -	audit_log_format(ab, " old-auid=%u auid=%u old-ses=%u ses=%u res=%d", -			 oldloginuid, loginuid, oldsessionid, sessionid, !rc); +	audit_log_format(ab, " old-auid=%u auid=%u tty=%s old-ses=%u ses=%u res=%d", +			 oldloginuid, loginuid, tty ? tty_name(tty) : "(none)", +			 oldsessionid, sessionid, !rc); +	audit_put_tty(tty);  	audit_log_end(ab);  }  |