10.69.24 fchownat ¶
POSIX specification:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/fchownat.html
Gnulib module: fchownat
Portability problems fixed by Gnulib:
- This function is missing on some platforms:
glibc 2.3.6, Mac OS X 10.5, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, Minix 3.1.8,
AIX 5.1, HP-UX 11, Cygwin 1.5.x, mingw, MSVC 14.
But the replacement function is not safe to be used in libraries and
is not multithread-safe. Also, the replacement may fail to change
symlinks if
lchown is unsupported, or fail altogether if
chown is unsupported.
- This function is declared in
<sys/stat.h>, not in <unistd.h>,
on some platforms:
Android 4.3.
- Some platforms fail to detect trailing slash on non-directories, as in
fchown(dir,"link-to-file/",uid,gid,flag):
Solaris 9.
- Some platforms fail to update the change time when at least one
argument was not −1, but no ownership changes resulted:
OpenBSD 7.7.
- Some platforms mistakenly dereference symlinks when using
AT_SYMLINK_NOFOLLOW:
Linux kernel 2.6.17.
- This function does not fail for an empty filename on some platforms:
Linux with glibc < 2.11.
Portability problems not fixed by Gnulib:
- This function sometimes fails with
EACCES when the failure is
due to lack of appropriate privileges (EPERM), not to
search permission denied on the file name prefix (EACCES):
Linux kernel 5.15 with glibc 2.35 and a CIFS v1 file system
(see https://bugs.gnu.org/65599).