.TH ACCESS 3 | |
.SH NAME | |
access \- determine accessibility of file | |
.SH SYNOPSIS | |
.B #include <u.h> | |
.br | |
.B #include <libc.h> | |
.PP | |
.B | |
int access(char *name, int mode) | |
.SH DESCRIPTION | |
.I Access | |
evaluates 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. | |
Zero is returned if the desired access is permitted, | |
\-1 if not. | |
.PP | |
Only access for open is checked. | |
A file may look executable, but | |
.IR exec (3) | |
will fail unless it is in proper format. | |
.PP | |
The include file | |
.F <libc.h> | |
defines | |
.BR AEXIST =0, | |
.BR AEXEC =1, | |
.BR AWRITE =2, | |
and | |
.BR AREAD =4. | |
.PP | |
.SH SOURCE | |
.B /usr/local/plan9/src/libc/9sys/access.c | |
.SH SEE ALSO | |
.IR stat (3) | |
.SH DIAGNOSTICS | |
Sets | |
.IR errstr . | |
.SH BUGS | |
Since file permissions are checked by the server and group information | |
is not known to the client, | |
.I access | |
must open the file to check permissions. | |
(It calls | |
.IR stat (3) | |
to check simple existence.) |