summaryrefslogtreecommitdiff
path: root/drivers/platform/wmi/tests/git@git.tavy.me:linux.git
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2026-05-15 11:35:13 -0400
committerChristian Brauner <brauner@kernel.org>2026-05-15 17:49:23 +0200
commit3aa75b92e862490b8744b659a5a906f1dc6cb951 (patch)
treedbb38c4feded322905de2b3e65f96d4cd774a7fc /drivers/platform/wmi/tests/git@git.tavy.me:linux.git
parent45e57cfb7b10b64fb0d38d671d26ec935fc7efce (diff)
nfsd: Use kernel credentials for case-info probe
nfsd_get_case_info() takes prepare_creds() and overrides fsuid/fsgid to GLOBAL_ROOT, intending to escape per-client policy on the parent directory. prepare_creds() copies the calling task's full credential, including the LSM security label, so only the DAC identity is neutralized. With labeled NFS, where the active LSM context has been mapped to the client, security_inode_file_getattr() can still deny the probe with -EACCES even though the case-folding property the caller wants is structural and identical for every client. The docblock already states the intent ("the probe runs with kernel credentials"), which the implementation does not deliver. prepare_kernel_cred(&init_task) constructs a credential from init_task's identity and security label, the kernel's own unconfined context. Use it instead and drop the redundant fsuid/fsgid overrides that init_task already supplies. The probe now matches the docblock, LSM denials on the parent disappear, and the call sites that map an unexpected error to NFS3ERR_SERVERFAULT or fail an NFSv4 GETATTR outright stop seeing -EACCES from this path. Reported-by: sashiko-bot <sashiko-bot@kernel.org> Closes: https://sashiko.dev/#/patchset/20260507-case-sensitivity-v14-0-e62cc8200435@oracle.com?part=14 Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Link: https://patch.msgid.link/20260515153515.362266-6-cel@kernel.org Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'drivers/platform/wmi/tests/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions