On Fri, 20 Jul 2007, [EMAIL PROTECTED] wrote:

> +/*
> + * Attach task with pid 'pid' to container 'cont'. Call with
> + * container_mutex, may take task_lock of task
> + */
> +static int attach_task_by_pid(struct container *cont, char *pidbuf)
> +{
> +     pid_t pid;
> +     struct task_struct *tsk;
> +     int ret;
> +
> +     if (sscanf(pidbuf, "%d", &pid) != 1)
> +             return -EIO;
> +
> +     if (pid) {
> +             rcu_read_lock();
> +             tsk = find_task_by_pid(pid);
> +             if (!tsk || tsk->flags & PF_EXITING) {
> +                     rcu_read_unlock();
> +                     return -ESRCH;
> +             }
> +             get_task_struct(tsk);
> +             rcu_read_unlock();
> +
> +             if ((current->euid) && (current->euid != tsk->uid)
> +                 && (current->euid != tsk->suid)) {
> +                     put_task_struct(tsk);
> +                     return -EACCES;

I wonder if we should allow CAP_SYS_ADMIN to do this, too.

-- 
James Morris
<[EMAIL PROTECTED]>

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
ckrm-tech mailing list
https://lists.sourceforge.net/lists/listinfo/ckrm-tech

Reply via email to