lkml.org 
[lkml]   [2015]   [Dec]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 12/18] fs: Don't remove suid for CAP_FSETID in s_user_ns
    Date
    Expand the check in should_remove_suid() to keep privileges for
    CAP_FSETID in s_user_ns rather than init_user_ns.

    Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
    Acked-by: Serge Hallyn <serge.hallyn@canonical.com>
    ---
    fs/inode.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    diff --git a/fs/inode.c b/fs/inode.c
    index 01c036fe1950..3e7c74da9304 100644
    --- a/fs/inode.c
    +++ b/fs/inode.c
    @@ -1684,7 +1684,8 @@ int should_remove_suid(struct dentry *dentry)
    if (unlikely((mode & S_ISGID) && (mode & S_IXGRP)))
    kill |= ATTR_KILL_SGID;

    - if (unlikely(kill && !capable(CAP_FSETID) && S_ISREG(mode)))
    + if (unlikely(kill && !ns_capable(dentry->d_sb->s_user_ns, CAP_FSETID) &&
    + S_ISREG(mode)))
    return kill;

    return 0;
    --
    1.9.1


    \
     
     \ /
      Last update: 2015-12-07 22:41    [W:4.220 / U:0.208 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site