mirror_zfs/module/os/linux/zfs
Andrew a741b386d3
Prevent zfs_acl_chmod() if aclmode restricted and ACL inherited
In absence of inheriting entry for owner@, group@, or everyone@,
zfs_acl_chmod() is called to set these. This can cause confusion for Samba
admins who do not expect these entries to appear on newly created files and
directories once they have been stripped from from the parent directory.

When aclmode is set to "restricted", chmod is prevented on non-trivial ACLs.
It is not a stretch to assume that in this case the administrator does not want
ZFS to add the missing special entries. Add check for this aclmode, and if an
inherited entry is present skip zfs_acl_chmod().

Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Andrew Walker <awalker@ixsystems.com>
Closes #10748
2020-08-22 21:49:25 -07:00
..
abd_os.c Include scatter_chunk_waste in arc_size 2020-08-17 20:04:04 -07:00
arc_os.c Revise ARC shrinker algorithm 2020-07-31 21:10:52 -07:00
Makefile.in Cleanup linux module kbuild files 2020-06-10 09:24:15 -07:00
mmp_os.c Add zfs_multihost_interval tunable handler for FreeBSD 2020-06-23 13:32:42 -07:00
policy.c Linux 4.10 compat: has_capability() 2020-07-19 09:56:21 -07:00
qat_compress.c Fix QAT allocation failure return value 2020-01-06 11:17:53 -08:00
qat_crypt.c QAT related bug fixes 2019-09-12 13:33:44 -07:00
qat.c QAT related bug fixes 2019-09-12 13:33:44 -07:00
spa_misc_os.c Make spa_history_zone platform-dependent in kernel 2020-03-02 09:43:30 -08:00
spa_stats.c Mark functions as static 2020-06-18 12:20:38 -07:00
trace.c Enable use of DTRACE_PROBE* macros in "spl" module 2019-11-01 13:13:43 -07:00
vdev_disk.c Import vdev ashift optimization from FreeBSD 2020-08-21 12:53:17 -07:00
vdev_file.c Import vdev ashift optimization from FreeBSD 2020-08-21 12:53:17 -07:00
zfs_acl.c Prevent zfs_acl_chmod() if aclmode restricted and ACL inherited 2020-08-22 21:49:25 -07:00
zfs_ctldir.c Eliminate Linux specific inode usage from common code 2019-12-11 11:53:57 -08:00
zfs_debug.c Linux 5.6 compat: time_t 2020-02-27 09:31:02 -08:00
zfs_dir.c Make use of ZFS_DEBUG consistent within kmod sources 2020-07-25 20:07:44 -07:00
zfs_file_os.c Re-share zfsdev_getminor and zfs_onexit_fd_hold 2020-02-28 14:50:32 -08:00
zfs_ioctl_os.c Make zc_nvlist_src_size limit tunable 2020-08-18 09:33:55 -07:00
zfs_sysfs.c Persistent L2ARC 2020-04-10 10:33:35 -07:00
zfs_vfsops.c Mark functions as static 2020-06-18 12:20:38 -07:00
zfs_vnops.c Make use of ZFS_DEBUG consistent within kmod sources 2020-07-25 20:07:44 -07:00
zfs_znode.c Rename refcount.h to zfs_refcount.h 2020-07-29 16:35:33 -07:00
zio_crypt.c Linux 4.14, 4.19, 5.0+ compat: SIMD save/restore 2019-10-24 10:17:33 -07:00
zpl_ctldir.c Eliminate Linux specific inode usage from common code 2019-12-11 11:53:57 -08:00
zpl_export.c Eliminate Linux specific inode usage from common code 2019-12-11 11:53:57 -08:00
zpl_file.c Mark functions as static 2020-06-18 12:20:38 -07:00
zpl_inode.c Mark functions as static 2020-06-18 12:20:38 -07:00
zpl_super.c linux: add basic fallocate(mode=0/2) compatibility 2020-06-18 11:22:11 -07:00
zpl_xattr.c Mark functions as static 2020-06-18 12:20:38 -07:00
zvol_os.c Linux 5.9 compat: make_request_fn replaced with submit_bio interface 2020-08-11 13:37:33 -07:00