access(2) access(2)
access - determine accessibility of a file
#include <unistd.h>
int access(const char *path, int amode);
path points to a path name naming a file. access checks the named file
for accessibility according to the bit pattern contained in amode, using
the real user ID in place of the effective user ID and the real group ID
in place of the effective group ID. The bit pattern contained in amode
is constructed by an OR of the following constants (defined in
<unistd.h>):
R_OK test for read permission
W_OK test for write permission
X_OK test for execute (search) permission
F_OK test for existence of file
EX_OK test for regular, executable file
EFF_ONLY_OK test using effective IDs
Note that successful checking of the EX_OK file does not imply that the
exec(2) system call will succeed on the file named by path, since the
check succeeds if at least one execute bit is set; there are also
additional checks made for execute permission by exec.
Access to the file is denied if one or more of the following are true:
EACCES Search permission is denied on a component of the
path prefix.
EACCES Access permission is denied.
EACCES The file is not a regular file.
EFAULT path points outside the allocated address space for
the process.
EINTR A signal was caught during the access system call.
EINVAL amode is invalid.
ELOOP Too many symbolic links were encountered in
translating path.
EMULTIHOP Components of path require hopping to multiple remote
machines.
Page 1
access(2) access(2)
ENAMETOOLONG The length of the path argument exceeds {PATH_MAX},
or the length of a path component exceeds {NAME_MAX}
while _POSIX_NO_TRUNC is in effect.
ENOTDIR A component of the path prefix is not a directory.
ENOENT Read, write, or execute (search) permission is
requested for a null path name.
ENOENT The named file does not exist.
ENOLINK path points to a remote machine and the link to that
machine is no longer active.
ETIMEDOUT The named file is located on a remote file system
which is not available [see intro(2)].
EROFS Write access is requested for a file on a read-only
file system.
chmod(2), stat(2)
``File Access Permission'' in intro(2)
If the requested access is permitted, a value of 0 is returned.
Otherwise, a value of -1 is returned and errno is set to indicate the
error.
PPPPaaaaggggeeee 2222 [ Back ]
|