From: "Serge E. Hallyn" <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
To: David Howells <dhowells-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
"Eric W. Biederman"
<ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org>
Cc: Linux Containers <containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org>
Subject: [PATCH 2/3] keys: consider user namespace in key_permission
Date: Thu, 11 Dec 2008 17:23:56 -0600 [thread overview]
Message-ID: <20081211232356.GB8447@us.ibm.com> (raw)
In-Reply-To: <20081211232323.GA8343-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
If a key is owned by another user namespace, then treat the
key as though it is owned by both another uid and gid.
Signed-off-by: Serge E. Hallyn <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
---
security/keys/permission.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/security/keys/permission.c b/security/keys/permission.c
index 5d9fc7b..0ed802c 100644
--- a/security/keys/permission.c
+++ b/security/keys/permission.c
@@ -35,6 +35,9 @@ int key_task_permission(const key_ref_t key_ref, const struct cred *cred,
key = key_ref_to_ptr(key_ref);
+ if (key->user->user_ns != cred->user->user_ns)
+ goto use_other_perms;
+
/* use the second 8-bits of permissions for keys the caller owns */
if (key->uid == cred->fsuid) {
kperm = key->perm >> 16;
@@ -56,6 +59,8 @@ int key_task_permission(const key_ref_t key_ref, const struct cred *cred,
}
}
+use_other_perms:
+
/* otherwise use the least-significant 8-bits */
kperm = key->perm;
--
1.5.4.3
next prev parent reply other threads:[~2008-12-11 23:23 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-11 23:23 [PATCH 0/3] keys: play nicely with user namespaces Serge E. Hallyn
[not found] ` <20081211232323.GA8343-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-11 23:23 ` [PATCH 1/3] keys: distinguish per-uid keys in different namespaces Serge E. Hallyn
2008-12-11 23:23 ` Serge E. Hallyn [this message]
2008-12-11 23:24 ` [PATCH 3/3] keys: skip keys from another user namespace Serge E. Hallyn
2008-12-12 12:51 ` [PATCH 0/3] keys: play nicely with user namespaces David Howells
[not found] ` <3507.1229086294-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-12 14:17 ` Serge E. Hallyn
[not found] ` <20081212141707.GB9571-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-12 15:57 ` David Howells
[not found] ` <25987.1229097458-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-12 16:22 ` Serge E. Hallyn
2008-12-17 23:55 ` Serge E. Hallyn
[not found] ` <20081212162220.GA15520-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-12 16:42 ` David Howells
[not found] ` <26177.1229100126-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-12 17:33 ` Serge E. Hallyn
[not found] ` <20081212173312.GA19085-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-12 18:38 ` David Howells
[not found] ` <28464.1229107090-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-12 19:31 ` Serge E. Hallyn
[not found] ` <20081217235536.GA932-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-18 1:03 ` David Howells
2008-12-18 13:46 ` David Howells
[not found] ` <3547.1229607983-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-18 17:46 ` Serge E. Hallyn
[not found] ` <20081218174613.GA13968-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-19 0:56 ` David Howells
[not found] ` <7376.1229648192-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-19 1:45 ` Serge E. Hallyn
[not found] ` <20081219014555.GA25688-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-12-19 2:30 ` David Howells
[not found] ` <7658.1229653824-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-19 9:07 ` Eric W. Biederman
[not found] ` <m1r6447csx.fsf-B27657KtZYmhTnVgQlOflh2eb7JE58TQ@public.gmane.org>
2008-12-19 11:17 ` David Howells
[not found] ` <10350.1229685462-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2008-12-19 14:37 ` Serge E. Hallyn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20081211232356.GB8447@us.ibm.com \
--to=serue-r/jw6+rmf7hqt0dzr+alfa@public.gmane.org \
--cc=containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org \
--cc=dhowells-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.