V10/man/adm/man2/access.2

Compare this file to the similar file:
Show the results in this format:

.TH ACCESS 2
.CT 2 dirs file_inq_creat secur
.SH NAME
access \(mi determine accessibility of file
.SH SYNOPSIS
.nf
.B int access(name, mode)
.B char *name;
.fi
.SH DESCRIPTION
.I Access
checks the given
file
.I name
for accessibility.
If \fImode\fL&4\fR
is nonzero,
read permission is expected;
if \fImode\fL&2\fR,
write permission;
if \fImode\fL&1\fR,
execute permission.
If \fImode\fL==0\fR,
the file merely need exist.
In any case
all directories leading to the file
must permit searches.
0 is returned if the desired access is permitted,
\-1 if not.
.PP
Permission is checked
against the real userid and groupid of the process;
this call is best used with set-userid and set-groupid programs.
.PP
Only access bits are checked.
A directory may be announced as writable by
.IR access ,
but an attempt to open it for writing will fail
(although files may be created there);
a file may look executable, but
.IR exec (2)
will fail unless it is in proper format.
.PP
.SH SEE ALSO
.IR stat (2)
.SH DIAGNOSTICS
.BR EACCES ,
.BR EFAULT ,
.BR EIO ,
.BR ELOOP ,
.BR ENOENT ,
.BR ENOTDIR ,
.BR EROFS ,
.BR ETXTBSY