ACCESS(2) Linux Programmer's Manual ACCESS(2)
NAME
access - check user's permissions for a fileSYNOPSIS
#include <unistd.h> int access(const char *pathname, int mode);DESCRIPTION
access checks whether the process would be allowed to read, write or test for existence of the file (or other file system object) whose name is pathname. mode is a mask consisting of one or more of R_OK, W_OK, X_OK and F_OK. R_OK, W_OK and X_OK request testing for reading, writing and executing the file, respectively. F_OK requests checking whether merely testing for the existence of the file would be allowed (this depends on the permissions of the directories in the path to the file, as given in path- name.) The check is done with the process's real uid and gid, rather than with the effective ids as is done when actu- ally attempting an operation. This is to allow set-UID programs to easily determine the invoking user's author- ity. Only access bits are checked, not the file type or con- tents. Therefore, if a directory is found to be "writable," it probably means that files can be created in the directory, and not that the directory can be written as a file. Similarly, a DOS file may be found to be "exe- cutable," but the execve(2) call will still fail.RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.ERRORS
EACCES The requested access would be denied, either to the file itself or one of the directories in path- name. EFAULT pathname points outside your accessible address space. EINVAL mode was incorrectly specified. ENAMETOOLONG pathname is too long. ENOENT A directory component in pathname would have beenLinux 1.1.46 21 August 1994 1
ACCESS(2) Linux Programmer's Manual ACCESS(2)
accessible but does not exist or was a dangling symbolic link. ENOTDIR A component used as a directory in pathname is not, in fact, a directory. ENOMEM Insufficient kernel memory was available. ELOOP pathname contains a reference to a circular sym- bolic link, i.e., a symbolic link containing a reference to itself.CONFORMING TO
SVID, AT&T, POSIX, X/OPEN, BSD 4.3
stat, open, chmod, chown, setuid,
Linux 1.1.46 21 August 1994 2
Top | Master Index | Keywords | Functions |