mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-03-25 16:44:38 +00:00
kill suid bit only for regular files
We don't have to do it because it is useless for non regular files. In fact block device may trigger this path without dentry->d_inode->i_mutex. (akpm: concerns were expressed (by me) about S_ISDIR inodes) Signed-off-by: Dmitri Monakhov <dmonakhov@openvz.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
5b6f1eb97d
commit
7f5ff766a7
1 changed files with 1 additions and 1 deletions
|
@ -1766,7 +1766,7 @@ 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)))
|
||||
if (unlikely(kill && !capable(CAP_FSETID) && S_ISREG(mode)))
|
||||
return kill;
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Add table
Reference in a new issue