|
rpm-build |
0a0c83 |
.\" Access Control Lists manual pages
|
|
rpm-build |
0a0c83 |
.\"
|
|
rpm-build |
0a0c83 |
.\" (C) 2002 Andreas Gruenbacher, <a.gruenbacher@bestbits.at>
|
|
rpm-build |
0a0c83 |
.\"
|
|
rpm-build |
0a0c83 |
.\" This is free documentation; you can redistribute it and/or
|
|
rpm-build |
0a0c83 |
.\" modify it under the terms of the GNU General Public License as
|
|
rpm-build |
0a0c83 |
.\" published by the Free Software Foundation; either version 2 of
|
|
rpm-build |
0a0c83 |
.\" the License, or (at your option) any later version.
|
|
rpm-build |
0a0c83 |
.\"
|
|
rpm-build |
0a0c83 |
.\" The GNU General Public License's references to "object code"
|
|
rpm-build |
0a0c83 |
.\" and "executables" are to be interpreted as the output of any
|
|
rpm-build |
0a0c83 |
.\" document formatting or typesetting system, including
|
|
rpm-build |
0a0c83 |
.\" intermediate and printed output.
|
|
rpm-build |
0a0c83 |
.\"
|
|
rpm-build |
0a0c83 |
.\" This manual is distributed in the hope that it will be useful,
|
|
rpm-build |
0a0c83 |
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
rpm-build |
0a0c83 |
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
rpm-build |
0a0c83 |
.\" GNU General Public License for more details.
|
|
rpm-build |
0a0c83 |
.\"
|
|
rpm-build |
0a0c83 |
.\" You should have received a copy of the GNU General Public
|
|
rpm-build |
0a0c83 |
.\" License along with this manual. If not, see
|
|
rpm-build |
0a0c83 |
.\" <http://www.gnu.org/licenses/>.
|
|
rpm-build |
0a0c83 |
.\"
|
|
rpm-build |
0a0c83 |
.Dd March 23, 2002
|
|
rpm-build |
0a0c83 |
.Dt ACL_EXTENDED_FILE 3
|
|
rpm-build |
0a0c83 |
.Os "Linux ACL"
|
|
rpm-build |
0a0c83 |
.Sh NAME
|
|
rpm-build |
0a0c83 |
.Nm acl_extended_file, acl_extended_file_nofollow
|
|
rpm-build |
0a0c83 |
.Nd test for information in ACLs by file name
|
|
rpm-build |
0a0c83 |
.Sh LIBRARY
|
|
rpm-build |
0a0c83 |
Linux Access Control Lists library (libacl, \-lacl).
|
|
rpm-build |
0a0c83 |
.Sh SYNOPSIS
|
|
rpm-build |
0a0c83 |
.In sys/types.h
|
|
rpm-build |
0a0c83 |
.In acl/libacl.h
|
|
rpm-build |
0a0c83 |
.Ft int
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file "const char *path_p"
|
|
rpm-build |
0a0c83 |
.Ft int
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file_nofollow "const char *path_p"
|
|
rpm-build |
0a0c83 |
.Sh DESCRIPTION
|
|
rpm-build |
0a0c83 |
The
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file
|
|
rpm-build |
0a0c83 |
function returns
|
|
rpm-build |
0a0c83 |
.Li 1
|
|
rpm-build |
0a0c83 |
if the file or directory referred to by the argument
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
is associated with an extended access ACL, or if the directory referred to by
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
is associated with a default ACL. The function returns
|
|
rpm-build |
0a0c83 |
.Li 0
|
|
rpm-build |
0a0c83 |
if the file has neither an extended access ACL nor a default ACL.
|
|
rpm-build |
0a0c83 |
.Pp
|
|
rpm-build |
0a0c83 |
An extended ACL is an ACL that contains entries other than the three
|
|
rpm-build |
0a0c83 |
required entries of tag types ACL_USER_OBJ, ACL_GROUP_OBJ and ACL_OTHER.
|
|
rpm-build |
0a0c83 |
If the result of the
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file
|
|
rpm-build |
0a0c83 |
function for a file object is
|
|
rpm-build |
0a0c83 |
.Li 0 ,
|
|
rpm-build |
0a0c83 |
then ACLs define no discretionary access rights other than those
|
|
rpm-build |
0a0c83 |
already defined by the traditional file permission bits.
|
|
rpm-build |
0a0c83 |
.Pp
|
|
rpm-build |
0a0c83 |
Access to the file object may be further restricted by other
|
|
rpm-build |
0a0c83 |
mechanisms, such as Mandatory Access Control schemes. The
|
|
rpm-build |
0a0c83 |
.Xr access 2
|
|
rpm-build |
0a0c83 |
system call can be used to check whether a given type of access to a file
|
|
rpm-build |
0a0c83 |
object would be granted.
|
|
rpm-build |
0a0c83 |
.Pp
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file_nofollow
|
|
rpm-build |
0a0c83 |
is identical to
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file ,
|
|
rpm-build |
0a0c83 |
except in the case of a symbolic link, where the link itself is interrogated,
|
|
rpm-build |
0a0c83 |
not the file that it refers to. Since symbolic links have no ACL themselves,
|
|
rpm-build |
0a0c83 |
the operation is supposed to fail on them.
|
|
rpm-build |
0a0c83 |
.Sh RETURN VALUE
|
|
rpm-build |
0a0c83 |
If successful, the
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file
|
|
rpm-build |
0a0c83 |
function returns
|
|
rpm-build |
0a0c83 |
.Li 1
|
|
rpm-build |
0a0c83 |
if the file object referred to by
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
has an extended access ACL or a default ACL, and
|
|
rpm-build |
0a0c83 |
.Li 0
|
|
rpm-build |
0a0c83 |
if the file object referred to by
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
has neither an extended access ACL nor a default ACL. Otherwise, the value
|
|
rpm-build |
0a0c83 |
.Li -1
|
|
rpm-build |
0a0c83 |
is returned and the global variable
|
|
rpm-build |
0a0c83 |
.Va errno
|
|
rpm-build |
0a0c83 |
is set to indicate the error.
|
|
rpm-build |
0a0c83 |
.Sh ERRORS
|
|
rpm-build |
0a0c83 |
If any of the following conditions occur, the
|
|
rpm-build |
0a0c83 |
.Fn acl_extended_file
|
|
rpm-build |
0a0c83 |
function returns
|
|
rpm-build |
0a0c83 |
.Li -1
|
|
rpm-build |
0a0c83 |
and sets
|
|
rpm-build |
0a0c83 |
.Va errno
|
|
rpm-build |
0a0c83 |
to the corresponding value:
|
|
rpm-build |
0a0c83 |
.Bl -tag -width Er
|
|
rpm-build |
0a0c83 |
.It Bq Er EACCES
|
|
rpm-build |
0a0c83 |
Search permission is denied for a component of the path prefix.
|
|
rpm-build |
0a0c83 |
.It Bq Er ENAMETOOLONG
|
|
rpm-build |
0a0c83 |
The length of the argument
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
is too long.
|
|
rpm-build |
0a0c83 |
.It Bq Er ENOENT
|
|
rpm-build |
0a0c83 |
The named object does not exist or the argument
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
points to an empty string.
|
|
rpm-build |
0a0c83 |
.It Bq Er ENOTDIR
|
|
rpm-build |
0a0c83 |
A component of the path prefix is not a directory.
|
|
rpm-build |
0a0c83 |
.It Bq Er ENOTSUP
|
|
rpm-build |
0a0c83 |
The file system on which the file identified by
|
|
rpm-build |
0a0c83 |
.Va path_p
|
|
rpm-build |
0a0c83 |
is located does not support ACLs, or ACLs are disabled.
|
|
rpm-build |
0a0c83 |
.El
|
|
rpm-build |
0a0c83 |
.Sh STANDARDS
|
|
rpm-build |
0a0c83 |
This is a non-portable, Linux specific extension to the ACL manipulation
|
|
rpm-build |
0a0c83 |
functions defined in IEEE Std 1003.1e draft 17 (\(lqPOSIX.1e\(rq, abandoned).
|
|
rpm-build |
0a0c83 |
.Sh SEE ALSO
|
|
rpm-build |
0a0c83 |
.Xr access 2 ,
|
|
rpm-build |
0a0c83 |
.Xr acl_get_file 3 ,
|
|
rpm-build |
0a0c83 |
.Xr acl 5
|
|
rpm-build |
0a0c83 |
.Sh AUTHOR
|
|
rpm-build |
0a0c83 |
Written by
|
|
rpm-build |
0a0c83 |
.An "Andreas Gruenbacher" Aq a.gruenbacher@bestbits.at .
|