summaryrefslogtreecommitdiffstats
path: root/kernel/auditsc.c
diff options
context:
space:
mode:
authorOndrej Mosnáček <omosnace@redhat.com>2018-05-17 17:31:14 +0200
committerPaul Moore <paul@paul-moore.com>2018-05-21 20:27:43 +0200
commit5b71388663c0920848c0ee7de946970a2692b76d (patch)
tree733d0e03c619487b466fdd26319c66f56dd72f90 /kernel/auditsc.c
parentaudit: use existing session info function (diff)
downloadlinux-5b71388663c0920848c0ee7de946970a2692b76d.tar.xz
linux-5b71388663c0920848c0ee7de946970a2692b76d.zip
audit: Fix wrong task in comparison of session ID
The audit_filter_rules() function in auditsc.c compared the session ID with the credentials of the current task, while it should use the credentials of the task given to audit_filter_rules() as a parameter (tsk). GitHub issue: https://github.com/linux-audit/audit-kernel/issues/82 Fixes: 8fae47705685 ("audit: add support for session ID user filter") Signed-off-by: Ondrej Mosnacek <omosnace@redhat.com> Reviewed-by: Richard Guy Briggs <rgb@redhat.com> [PM: not user visible, dropped stable] Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'kernel/auditsc.c')
-rw-r--r--kernel/auditsc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/auditsc.c b/kernel/auditsc.c
index ef3e189bcb15..ceb1c4596c51 100644
--- a/kernel/auditsc.c
+++ b/kernel/auditsc.c
@@ -517,7 +517,7 @@ static int audit_filter_rules(struct task_struct *tsk,
result = audit_gid_comparator(cred->fsgid, f->op, f->gid);
break;
case AUDIT_SESSIONID:
- sessionid = audit_get_sessionid(current);
+ sessionid = audit_get_sessionid(tsk);
result = audit_comparator(sessionid, f->op, f->val);
break;
case AUDIT_PERS: