ACCESS(2) COMMAND REFERENCE ACCESS(2)
NAME
access - determine accessibility of file
SYNOPSIS
#include <sys/file.h>
access(path, mode)
char *path;
int mode;
DESCRIPTION
Access checks the given file path for accessibility
according to mode. Mode is the inclusive or of the
following values, defined in <sys/file.h>:
#define R_OK 4 * test for read permission *
#define W_OK 2 * test for write permission *
#define X_OK 1 * test for execute (search) permission *
#define F_OK 0 * test for presence of file *
Specifying mode as F_OK (i.e. 0) tests whether the
directories leading to the file can be searched and the file
exists.
The real user ID and the group access list (including the
real group ID) are used in verifying permission, so this
call is useful to set-user-id programs.
Notice that only access bits are checked. A directory may
be indicated as writable by access, but an attempt to open
it for writing will fail (although files may be created
there); a file may look executable, but execve will fail
unless it is in proper format.
DIAGNOSTICS
Access to the file is denied if one or more of the following
are true:
[ENOTDIR] A component of the path prefix is not a
directory.
[ENAMETOOLONG] The argument path is too long.
[ENOENT] The named file does not exist.
[ENOASCII] The argument path contains a byte with the
high-order bit set.
[ELOOP] Too many symbolic links were encountered in
translating the pathname.
[EROFS] Write access is requested for a file on a
Printed 4/6/89 1
ACCESS(2) COMMAND REFERENCE ACCESS(2)
read-only file system.
[ETXTBSY] Write access is requested for a pure
procedure (shared text) file that is being
executed.
[EACCES] Permission bits of the file mode do not
permit the requested access; or search
permission is denied on a component of the
path prefix. The owner of a file has
permission checked with respect to the
``owner'' read, write, and execute mode bits,
members of the file's group other than the
owner have permission checked with respect to
the ``group'' mode bits, and all others have
permissions checked with respect to the
``other'' mode bits.
[EFAULT] Path points outside the process's allocated
address space.
RETURN VALUE
Upon successful completion, a value of 0 is returned.
Otherwise, a value of -1 is returned and errno is set to
indicate the error.
SEE ALSO
chmod(2) and stat(2).
Printed 4/6/89 2
%%index%%
na:288,92;
sy:380,724;
de:1104,1299;
di:2403,693;3456,964;
rv:4420,280;
se:4700,152;
%%index%%000000000118