|FCHOWNAT(2)||Linux Programmer's Manual||FCHOWNAT(2)|
NAMEfchownat - change ownership of a file relative to a directory file descriptor
int fchownat(int dirfd , const char * pathname ,
uid_t owner , gid_t group , int flags );
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
- Since glibc 2.10:
- _XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L
- Before glibc 2.10:
DESCRIPTIONThe fchownat() system call operates in exactly the same way as chown(2), except for the differences described in this manual page.
- AT_EMPTY_PATH (since Linux 2.6.39)
pathname is an empty string, operate on the file referred to by
dirfd (which may have been obtained using the
O_PATH flag). In this case,
dirfd can refer to any type of file, not just a directory.
- If pathname is a symbolic link, do not dereference it: instead operate on the link itself, like lchown(2). (By default, fchownat() dereferences symbolic links, like chown(2).)
RETURN VALUEOn success, fchownat() returns 0. On error, -1 is returned and errno is set to indicate the error.
ERRORSThe same errors that occur for chown(2) can also occur for fchownat(). The following additional errors can occur for fchownat():
- dirfd is not a valid file descriptor.
- Invalid flag specified in flags.
- pathname is relative and dirfd is a file descriptor referring to a file other than a directory.
VERSIONSfchownat() was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4.
CONFORMING TOPOSIX.1-2008. A similar system call exists on Solaris.
NOTESSee openat(2) for an explanation of the need for fchownat().
SEE ALSOchown(2), openat(2), path_resolution(7), symlink(7)
COLOPHONThis page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.