diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2025-01-07 17:44:44 +0100 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2025-01-08 16:13:14 +0100 |
commit | 2e4db338ac125579d555aeee516e48588a628a16 (patch) | |
tree | 1875bf295f4be51769eaa5a8d7b305860454f102 /include/gcc-c-interface.h | |
parent | ad8d3195cc706cd568b24fdd9ce59fe938c1287e (diff) | |
download | newlib-2e4db338ac125579d555aeee516e48588a628a16.zip newlib-2e4db338ac125579d555aeee516e48588a628a16.tar.gz newlib-2e4db338ac125579d555aeee516e48588a628a16.tar.bz2 |
Cygwin: access: Fix X_OK behaviour for backup operators and admins
After commit a0933cd17d19, access(_, X_OK) returns 0 if the user
holds SE_BACKUP_PRIVILEGE, even if the file's ACL denies execution
to the user. This is triggered by trying to open the file with
FILE_OPEN_FOR_BACKUP_INTENT.
Fix check_file_access() so it checks for X_OK without specifying
the FILE_OPEN_FOR_BACKUP_INTENT flag if the file is not a directory.
Rearrange function slightly and add comments for easier comprehension.
Fixes: a0933cd17d19 ("Cygwin: access: Correction for samba/SMB share")
Reported-by: Bruno Haible <bruno@clisp.org>
Co-authored-by: Takashi Yano <takashi.yano@nifty.ne.jp>
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'include/gcc-c-interface.h')
0 files changed, 0 insertions, 0 deletions