]> git.baikalelectronics.ru Git - kernel.git/commit
userns: Add a more complete capability subset test to commit_creds
authorEric W. Biederman <ebiederm@xmission.com>
Fri, 14 Dec 2012 16:50:54 +0000 (08:50 -0800)
committerEric W. Biederman <ebiederm@xmission.com>
Sat, 15 Dec 2012 02:36:26 +0000 (18:36 -0800)
commita678259a8a63185ec0cdd9390413c6aba3c561bf
tree4e7093d4e288238f0514187e87b13738504a21df
parent3c39583126ce60bc14f2eb685430fc7eb8753ef0
userns: Add a more complete capability subset test to commit_creds

When unsharing a user namespace we reduce our credentials to just what
can be done in that user namespace.  This is a subset of the credentials
we previously had.  Teach commit_creds to recognize this is a subset
of the credentials we have had before and don't clear the dumpability flag.

This allows an unprivileged  program to do:
unshare(CLONE_NEWUSER);
fd = open("/proc/self/uid_map", O_RDWR);

Where previously opening the uid_map writable would fail because
the the task had been made non-dumpable.

Acked-by: Serge Hallyn <serge.hallyn@canonical.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
kernel/cred.c