glibc/io
Adhemerval Zanella 65341f7bbe linux: Use fchmodat2 on fchmod for flags different than 0 (BZ 26401)
Linux 6.6 (09da082b07bbae1c) added support for fchmodat2, which has
similar semantics as fchmodat with an extra flag argument.  This
allows fchmodat to implement AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH
without the need for procfs.

The syscall is registered on all architectures (with value of 452
except on alpha which is 562, commit 78252deb023cf087).

The tst-lchmod.c requires a small fix where fchmodat checks two
contradictory assertions ('(st.st_mode & 0777) == 2' and
'(st.st_mode & 0777) == 3').

Checked on x86_64-linux-gnu on a 6.6 kernel.

Reviewed-by: Florian Weimer <fweimer@redhat.com>
2023-11-20 13:15:24 -03:00
..
bits Add STATX_DIOALIGN from Linux 6.1 to bits/statx-generic.h 2023-01-17 20:41:34 +00:00
sys y2038: Fix support for 64-bit time on legacy ABIs 2023-11-15 10:15:12 -03:00
access.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
bug-ftw1.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
bug-ftw2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
bug-ftw3.c Update. 2002-02-07 17:54:45 +00:00
bug-ftw4.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
bug-ftw5.c [BZ #4076] 2007-02-21 09:36:46 +00:00
chdir.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
chmod.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
chown.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
close_range.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
close.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
closefrom.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
copy_file_range.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
creat64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
creat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dup2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dup3.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dup.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
euidaccess.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
faccessat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fchdir.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fchmod.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fchmodat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fchown.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fchownat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fcntl64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fcntl.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fcntl.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
file_change_detection.c Fix all the remaining misspellings -- BZ 25337 2023-06-02 01:39:48 +00:00
flock.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstat64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstatat64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstatat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstatfs64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstatfs.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstatvfs64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fstatvfs.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fts64-time64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fts64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fts.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
fts.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ftw64-time64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ftw64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ftw.c Replace rawmemchr (s, '\0') with strchr 2023-02-06 16:16:19 +00:00
ftw.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ftwtest-sh Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ftwtest-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
ftwtest.c Update. 2003-11-07 23:00:00 +00:00
futimens.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
getcwd.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
getdirname.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
getwd.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
isatty.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lchmod.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lchown.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
link.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
linkat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lockf64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lockf.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lseek64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lseek.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lstat64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
lstat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Makefile io: Fix record locking contants for powerpc64 with __USE_FILE_OFFSET64 2023-09-07 21:56:31 +02:00
mkdir.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
mkdirat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
mkfifo.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
mkfifoat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
mknod.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
mknodat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
open64_2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
open64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
open_2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
open.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
openat64_2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
openat64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
openat_2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
openat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
pipe2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
pipe.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
poll.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
poll.h initial import 1995-02-18 01:27:10 +00:00
posix_fadvise64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
posix_fadvise.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
posix_fallocate64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
posix_fallocate.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ppoll.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
pwd.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
read.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
readlink.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
readlinkat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
rmdir.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sendfile64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sendfile.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
stat64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
stat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
statfs64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
statfs.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
statvfs64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
statvfs.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
statx_generic.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
statx.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
symlink.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
symlinkat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
test-lfs.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
test-stat2.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
test-stat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
test-utime.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-close_range.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-closefrom.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-copy_file_range.c tests: replace ftruncate by xftruncate 2023-06-01 12:45:13 -04:00
tst-faccessat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-fchmodat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-fchownat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-fcntl-lock-lfs.c io: Fix record locking contants for powerpc64 with __USE_FILE_OFFSET64 2023-09-07 21:56:31 +02:00
tst-fcntl-lock.c io: Fix record locking contants on 32 bit arch with 64 bit default time_t (BZ#30477) 2023-05-30 08:53:07 -03:00
tst-fcntl-time64.c io: Add time64 alias for fcntl 2021-07-21 11:58:16 +02:00
tst-fcntl.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-file_change_detection.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-fstatat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-fts-lfs.c Add LFS support for fts functions (bug 11460) 2015-11-06 11:24:16 +01:00
tst-fts-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-fts.c Fix all the remaining misspellings -- BZ 25337 2023-06-02 01:39:48 +00:00
tst-ftw-bz26353.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-ftw-bz28126.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-ftw-lnk.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-futimens-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-futimens.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-futimes-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-futimes.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-futimesat-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-futimesat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-getcwd-abspath.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-getcwd.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-lchmod-time64.c linux: Fix fchmodat with AT_SYMLINK_NOFOLLOW for 64 bit time_t (BZ#29097) 2022-04-28 09:58:44 -03:00
tst-lchmod.c linux: Use fchmodat2 on fchmod for flags different than 0 (BZ 26401) 2023-11-20 13:15:24 -03:00
tst-linkat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-lockf.c io: Fix record locking contants on 32 bit arch with 64 bit default time_t (BZ#30477) 2023-05-30 08:53:07 -03:00
tst-lutimes-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-lutimes.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-mkdirat.c Assume that _DIRENT_HAVE_D_TYPE is always defined. 2017-10-30 15:48:33 +01:00
tst-mkfifoat.c Assume that _DIRENT_HAVE_D_TYPE is always defined. 2017-10-30 15:48:33 +01:00
tst-mknodat.c Assume that _DIRENT_HAVE_D_TYPE is always defined. 2017-10-30 15:48:33 +01:00
tst-open-tmpfile.c io: Fix a typo 2023-05-20 18:16:13 +02:00
tst-openat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-posix_fallocate64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-posix_fallocate-common.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-posix_fallocate.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-readlinkat.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-renameat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-stat-lfs.c io: Return EBAFD for negative file descriptor on fstat (BZ #27559) 2021-03-11 10:51:55 -03:00
tst-stat-time64.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-stat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-statvfs.c io/tst-statvfs: fix statfs().f_type comparison test on some arches 2023-08-15 17:08:23 +02:00
tst-statx.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-symlinkat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-ttyname_r.c * nis/nis_subr.c (nis_getnames): Revert last change. 2006-12-05 21:28:15 +00:00
tst-unlinkat.c tests: replace write by xwrite 2023-06-01 12:40:05 -04:00
tst-utime-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-utime.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-utimensat-skeleton.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-utimensat-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-utimensat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-utimes-time64.c y2038: Add test coverage 2021-06-15 10:42:11 -03:00
tst-utimes.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ttyname_r.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
ttyname.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
umask.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
unlink.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
unlinkat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
utime.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
utime.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
utimensat.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Versions io: Add closefrom [BZ #10353] 2021-07-08 14:08:14 -03:00
write.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00