diff options
author | Christian Brauner <[email protected]> | 2021-01-21 14:19:23 +0100 |
---|---|---|
committer | Christian Brauner <[email protected]> | 2021-01-24 14:27:16 +0100 |
commit | 0558c1bf5a0811bf5e3753eed911a15b9bd08271 (patch) | |
tree | bbaad2c11479beaac5328c5c3eb33241f9b3cc45 /security/selinux/hooks.c | |
parent | 02f92b3868a1b34ab98464e76b0e4e060474ba10 (diff) |
capability: handle idmapped mounts
In order to determine whether a caller holds privilege over a given
inode the capability framework exposes the two helpers
privileged_wrt_inode_uidgid() and capable_wrt_inode_uidgid(). The former
verifies that the inode has a mapping in the caller's user namespace and
the latter additionally verifies that the caller has the requested
capability in their current user namespace.
If the inode is accessed through an idmapped mount map it into the
mount's user namespace. Afterwards the checks are identical to
non-idmapped inodes. If the initial user namespace is passed all
operations are a nop so non-idmapped mounts will not see a change in
behavior.
Link: https://lore.kernel.org/r/[email protected]
Cc: Christoph Hellwig <[email protected]>
Cc: David Howells <[email protected]>
Cc: Al Viro <[email protected]>
Cc: [email protected]
Reviewed-by: Christoph Hellwig <[email protected]>
Reviewed-by: James Morris <[email protected]>
Acked-by: Serge Hallyn <[email protected]>
Signed-off-by: Christian Brauner <[email protected]>
Diffstat (limited to 'security/selinux/hooks.c')
0 files changed, 0 insertions, 0 deletions