Re: [PATCH 2/2] exit_notify: kill the wrong capable(CAP_KILL) check

From: Oleg Nesterov
Date: Wed Feb 25 2009 - 17:07:11 EST


On 02/25, Serge E. Hallyn wrote:
>
> Quoting Roland McGrath (roland@xxxxxxxxxx):
> > > I can't understand why exit_notify() checks capable(CAP_KILL), but this
> > > looks just wrong.
> >
> > I don't know either why it's there. My guess is that it was not actually
> > thought out specifically, just a "unless capable" exception added when the
> > security-motivated exclusions (exec_id stuff) were added.
> >
> > I can't think of any reason not to drop this check.
>
> Because of the following test?
>
> #include <stdio.h>
> #include <sched.h>
> #include <signal.h>
> #include <stdlib.h>
>
> int childfn(void *data)
> {
> printf("hi there, i'm the child\n");
> sleep(10);
> exit(0);
> }
>
> int main()
> {
> int stacksize = 4*getpagesize();
> void *stack, *stacktop;
>
> stack = malloc(stacksize);
> stacktop = stack + stacksize;
>
> int p = clone(childfn, stacktop, CLONE_PARENT|SIGSTOP, NULL);
> exit(0);
> }

Can't understand... Why do you think CAP_KILL makes things better?

Actually, how can it make any difference in this case?

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/