zfs/module
Andrew Walker 39b4adf91d Fix access check when cred allows override of ACL
Properly evaluate edge cases where user credential may grant capability
to override DAC in various situations. Switch to using ns-aware checks
rather than capable().

Expand optimization allow bypass of zfs_zaccess() in case of trivial
ACL if MAY_OPEN is included in requested mask. This will be evaluated
in generic_permission() check, which is RCU walk safe. This means that
in most cases evaluating permissions on boot volume with NFSv4 ACLs
will follow the fast path on checking inode permissions.

Additionally, CAP_SYS_ADMIN is granted to nfsd process, and so override
for this capability in access2 policy check is removed in favor of a
simple check for fsid == 0. Checks for CAP_DAC_OVERRIDE and other
override capabilities are kept as-is.

Signed-off-by: Andrew Walker <awalker@ixsystems.com>
2024-02-29 23:31:47 +05:00
..
avl Suppress Clang Static Analyzer false positive in the AVL tree code. 2023-03-08 13:51:21 -08:00
icp module/icp/asm-arm/sha2: enable non-SIMD asm kernels on armv5/6 2023-12-05 12:01:09 -08:00
lua LUA: Backport CVE-2020-24370's patch 2024-02-07 11:53:05 -08:00
nvpair nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
os Fix access check when cred allows override of ACL 2024-02-29 23:31:47 +05:00
unicode Illumos #15286: do_composition() needs sign awareness 2023-01-05 11:16:21 -08:00
zcommon Make acltype=nfsv4 the default on Linux, too 2024-02-29 23:31:47 +05:00
zfs ddt: document the theory and the key data structures 2024-02-15 11:46:00 -08:00
zstd Resolve WS-2021-0184 vulnerability in zstd 2023-02-02 15:12:51 -08:00
.gitignore FreeBSD: Ignore symlink to i386 includes 2022-08-02 16:34:23 -07:00
Kbuild.in Implement NFSv41 ACLs through xattr 2024-02-29 23:29:18 +05:00
Makefile.bsd ddt: rework ops interface in terms of keys and values 2024-02-15 11:45:38 -08:00
Makefile.in Implement NFSv41 ACLs through xattr 2024-02-29 23:29:18 +05:00