[patch 2/2] Use find_task_by_vpid in audit code

The pid to lookup a task by is passed inside audit code via netlink message.

Thanks to Denis Lunev, netlink packets are now (since 2.6.24) _always_
processed in the context of the sending task.  So this is correct to lookup
the task with find_task_by_vpid() here.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Pavel Emelyanov 2008-04-18 13:30:15 -07:00 committed by Al Viro
parent 41126226e1
commit 4a761b8c1d

View File

@ -455,7 +455,7 @@ static int audit_prepare_user_tty(pid_t pid, uid_t loginuid, u32 sessionid)
int err;
read_lock(&tasklist_lock);
tsk = find_task_by_pid(pid);
tsk = find_task_by_vpid(pid);
err = -ESRCH;
if (!tsk)
goto out;
@ -871,7 +871,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
struct task_struct *tsk;
read_lock(&tasklist_lock);
tsk = find_task_by_pid(pid);
tsk = find_task_by_vpid(pid);
if (!tsk)
err = -ESRCH;
else {
@ -894,7 +894,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
if (s->enabled != 0 && s->enabled != 1)
return -EINVAL;
read_lock(&tasklist_lock);
tsk = find_task_by_pid(pid);
tsk = find_task_by_vpid(pid);
if (!tsk)
err = -ESRCH;
else {