1
0
Fork 0
alistair23-linux/fs/f2fs
Ernesto A. Fernández 14af20fcb1 f2fs: preserve i_mode if __f2fs_set_acl() fails
When changing a file's acl mask, __f2fs_set_acl() will first set the
group bits of i_mode to the value of the mask, and only then set the
actual extended attribute representing the new acl.

If the second part fails (due to lack of space, for example) and the
file had no acl attribute to begin with, the system will from now on
assume that the mask permission bits are actual group permission bits,
potentially granting access to the wrong users.

Prevent this by only changing the inode mode after the acl has been set.

Signed-off-by: Ernesto A. Fernández <ernesto.mnd.fernandez@gmail.com>
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
2017-07-28 17:48:54 -07:00
..
Kconfig f2fs: add mount option to select fault injection ratio 2016-05-07 10:32:22 -07:00
Makefile f2fs: move sysfs code from super.c to fs/f2fs/sysfs.c 2017-07-04 02:11:45 -07:00
acl.c f2fs: preserve i_mode if __f2fs_set_acl() fails 2017-07-28 17:48:54 -07:00
acl.h f2fs: remove dead code f2fs_check_acl 2016-09-14 16:52:36 -07:00
checkpoint.c f2fs: avoid cpu lockup 2017-07-17 19:23:18 -07:00
data.c for-f2fs-4.13 2017-07-10 14:29:45 -07:00
debug.c f2fs: show available_nids in f2fs/status 2017-05-03 10:04:57 -07:00
dir.c f2fs: do not set LOST_PINO for newly created dir 2017-07-07 10:34:45 -07:00
extent_cache.c f2fs: fix a bug caused by NULL extent tree 2017-05-23 21:07:18 -07:00
f2fs.h f2fs: spread struct f2fs_dentry_ptr for inline path 2017-07-26 19:34:30 -07:00
file.c f2fs: remove extra inode_unlock() in error path 2017-07-15 21:10:23 -07:00
gc.c f2fs: introduce io_list for serialize data/node IOs 2017-05-23 21:09:03 -07:00
gc.h f2fs: detect idle time depending on user behavior 2016-01-11 15:56:37 -08:00
hash.c f2fs: check entire encrypted bigname when finding a dentry 2017-05-04 11:44:35 -04:00
inline.c f2fs: spread struct f2fs_dentry_ptr for inline path 2017-07-26 19:34:30 -07:00
inode.c f2fs: support plain user/group quota 2017-07-08 23:12:27 -07:00
namei.c f2fs: support plain user/group quota 2017-07-08 23:12:27 -07:00
node.c f2fs: alloc new nids for xattr block in recovery 2017-07-26 19:34:30 -07:00
node.h f2fs: simplify the way of calulating next nat address 2017-07-04 02:11:34 -07:00
recovery.c f2fs: avoid dirty node pages in check_only recovery 2017-04-18 13:37:49 -07:00
segment.c for-f2fs-4.13 2017-07-10 14:29:45 -07:00
segment.h for-f2fs-4.13 2017-07-10 14:29:45 -07:00
shrinker.c f2fs: avoid casted negative value as shrink count 2016-11-23 12:11:03 -08:00
super.c for-f2fs-4.13 2017-07-10 14:29:45 -07:00
sysfs.c f2fs: include seq_file.h for sysfs.c 2017-07-17 19:23:12 -07:00
trace.c f2fs: use set_page_private marcro in f2fs_trace_pid 2017-03-24 15:10:49 -04:00
trace.h f2fs: add sbi and page pointer in f2fs_io_info 2015-05-28 15:41:32 -07:00
xattr.c f2fs: remove unused input parameter 2017-07-26 19:34:30 -07:00
xattr.h f2fs: guard macro variables with braces 2017-04-10 19:48:10 -07:00