Re: Posix file capabilities in 2.6.24rc2

From: Chris Friedhoff
Date: Thu Nov 15 2007 - 17:03:18 EST


No, the patch doesn't fix the problem.
I still have the black screen with the cursor when I close the
xsession, only the windowmanager is closed.
consolemessage:
xinit: Operation not permitted (errno 1): Can't kill X server
kernel has capabilities, xinit has no caps granted.

Chris


> I'm setting up a vm to play with this. Will look into it.
>
> Oh, looking at a few branches, I see that the patch for bug# 9247
> (on bugzilla.kernel.org) isn't in 2.6.24-rc2 yet. Can you check
> whether the following patch fixes it?
>
> thanks,
> -serge
>
> >From 347faf5852644b91632813885784104f4cdb640a Mon Sep 17 00:00:00 2001
> From: Serge E. Hallyn <serue@xxxxxxxxxx>
> Date: Wed, 14 Nov 2007 13:00:52 -0500
> Subject: [PATCH 1/1] file capabilities: allow sigcont within session (v2.6.24-rc2)
>
> Allow sigcont to be sent to a process with greater capabilities
> if it is in the same session. Otherwise, a shell from which
> I've started a root shell and done 'suspend' can't be restarted
> by the parent shell.
>
> (this patch against v2.6.24-rc2)
>
> Signed-off-by: Serge E. Hallyn <serue@xxxxxxxxxx>
> ---
> security/commoncap.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/security/commoncap.c b/security/commoncap.c
> index bf67871..c9f6867 100644
> --- a/security/commoncap.c
> +++ b/security/commoncap.c
> @@ -534,6 +534,8 @@ int cap_task_kill(struct task_struct *p, struct siginfo *info,
> * Used only by usb drivers?
> */
> return 0;
> + if (sig == SIGCONT && (task_session_nr(current)==task_session_nr(p)))
> + return 0;
> if (cap_issubset(p->cap_permitted, current->cap_permitted))
> return 0;
> if (capable(CAP_KILL))
> --
> 1.5.1.1.GIT


--------------------
Chris Friedhoff
chris@xxxxxxxxxxxxx
-
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/