diff options
Diffstat (limited to 'fs/open.c')
-rw-r--r-- | fs/open.c | 12 |
1 files changed, 1 insertions, 11 deletions
@@ -441,17 +441,7 @@ asmlinkage long sys_faccessat(int dfd, const char __user *filename, int mode) | |||
441 | current->fsgid = current->gid; | 441 | current->fsgid = current->gid; |
442 | 442 | ||
443 | if (!issecure(SECURE_NO_SETUID_FIXUP)) { | 443 | if (!issecure(SECURE_NO_SETUID_FIXUP)) { |
444 | /* | 444 | /* Clear the capabilities if we switch to a non-root user */ |
445 | * Clear the capabilities if we switch to a non-root user | ||
446 | */ | ||
447 | #ifndef CONFIG_SECURITY_FILE_CAPABILITIES | ||
448 | /* | ||
449 | * FIXME: There is a race here against sys_capset. The | ||
450 | * capabilities can change yet we will restore the old | ||
451 | * value below. We should hold task_capabilities_lock, | ||
452 | * but we cannot because user_path_at can sleep. | ||
453 | */ | ||
454 | #endif /* ndef CONFIG_SECURITY_FILE_CAPABILITIES */ | ||
455 | if (current->uid) | 445 | if (current->uid) |
456 | old_cap = cap_set_effective(__cap_empty_set); | 446 | old_cap = cap_set_effective(__cap_empty_set); |
457 | else | 447 | else |