|
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_CALC_MASK 3
|
|
rpm-build |
0a0c83 |
.Os "Linux ACL"
|
|
rpm-build |
0a0c83 |
.Sh NAME
|
|
rpm-build |
0a0c83 |
.Nm acl_calc_mask
|
|
rpm-build |
0a0c83 |
.Nd calculate the file group class mask
|
|
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 sys/acl.h
|
|
rpm-build |
0a0c83 |
.Ft int
|
|
rpm-build |
0a0c83 |
.Fn acl_calc_mask "acl_t *acl_p"
|
|
rpm-build |
0a0c83 |
.Sh DESCRIPTION
|
|
rpm-build |
0a0c83 |
The
|
|
rpm-build |
0a0c83 |
.Fn acl_calc_mask
|
|
rpm-build |
0a0c83 |
function calculates and sets the permissions associated with the ACL_MASK
|
|
rpm-build |
0a0c83 |
ACL entry of the ACL referred to by
|
|
rpm-build |
0a0c83 |
.Va acl_p .
|
|
rpm-build |
0a0c83 |
The value of the new permissions is the union of the permissions
|
|
rpm-build |
0a0c83 |
granted by all entries of tag type ACL_GROUP, ACL_GROUP_OBJ, or ACL_USER.
|
|
rpm-build |
0a0c83 |
If the ACL referred to by
|
|
rpm-build |
0a0c83 |
.Va acl_p
|
|
rpm-build |
0a0c83 |
already contains an ACL_MASK entry, its permissions are overwritten;
|
|
rpm-build |
0a0c83 |
if it does not contain an ACL_MASK entry, one is added.
|
|
rpm-build |
0a0c83 |
.Pp
|
|
rpm-build |
0a0c83 |
If the ACL referred to by
|
|
rpm-build |
0a0c83 |
.Va acl_p
|
|
rpm-build |
0a0c83 |
does not contain enough space for the new ACL entry, then additional working
|
|
rpm-build |
0a0c83 |
storage may be allocated. If the working storage cannot be increased in the
|
|
rpm-build |
0a0c83 |
current location, then it may be relocated and the previous working storage
|
|
rpm-build |
0a0c83 |
is released and a pointer to the new working storage is returned via
|
|
rpm-build |
0a0c83 |
.Va acl_p .
|
|
rpm-build |
0a0c83 |
.Pp
|
|
rpm-build |
0a0c83 |
The order of existing entries in the ACL is undefined after this function.
|
|
rpm-build |
0a0c83 |
.Pp
|
|
rpm-build |
0a0c83 |
Any existing ACL entry descriptors that refer to entries in the ACL continue to
|
|
rpm-build |
0a0c83 |
refer to those entries. Any existing ACL pointers that refer to the ACL
|
|
rpm-build |
0a0c83 |
referred to by
|
|
rpm-build |
0a0c83 |
.Va acl_p
|
|
rpm-build |
0a0c83 |
continue to refer to the ACL.
|
|
rpm-build |
0a0c83 |
.\" <AG>
|
|
rpm-build |
0a0c83 |
.\" Conflict between requirements:
|
|
rpm-build |
0a0c83 |
.\" (a) ACL may be relocated,
|
|
rpm-build |
0a0c83 |
.\" (b) all pointers remain valid.
|
|
rpm-build |
0a0c83 |
.\" </AG>
|
|
rpm-build |
0a0c83 |
.Sh RETURN VALUE
|
|
rpm-build |
0a0c83 |
.Rv -std acl_calc_mask
|
|
rpm-build |
0a0c83 |
.Sh ERRORS
|
|
rpm-build |
0a0c83 |
If any of the following conditions occur, the
|
|
rpm-build |
0a0c83 |
.Fn acl_calc_mask
|
|
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 EINVAL
|
|
rpm-build |
0a0c83 |
The argument
|
|
rpm-build |
0a0c83 |
.Va acl
|
|
rpm-build |
0a0c83 |
is not a valid pointer to an ACL.
|
|
rpm-build |
0a0c83 |
.It Bq Er ENOMEM
|
|
rpm-build |
0a0c83 |
The
|
|
rpm-build |
0a0c83 |
.Fn acl_calc_mask
|
|
rpm-build |
0a0c83 |
function is unable to allocate the memory required for an ACL_MASK ACL entry.
|
|
rpm-build |
0a0c83 |
.El
|
|
rpm-build |
0a0c83 |
.Sh STANDARDS
|
|
rpm-build |
0a0c83 |
IEEE Std 1003.1e draft 17 (\(lqPOSIX.1e\(rq, abandoned)
|
|
rpm-build |
0a0c83 |
.Sh SEE ALSO
|
|
rpm-build |
0a0c83 |
.Xr acl_check 3 ,
|
|
rpm-build |
0a0c83 |
.Xr acl_get_entry 3 ,
|
|
rpm-build |
0a0c83 |
.Xr acl_valid 3 ,
|
|
rpm-build |
0a0c83 |
.Xr acl 5
|
|
rpm-build |
0a0c83 |
.Sh AUTHOR
|
|
rpm-build |
0a0c83 |
Derived from the FreeBSD manual pages written by
|
|
rpm-build |
0a0c83 |
.An "Robert N M Watson" Aq rwatson@FreeBSD.org ,
|
|
rpm-build |
0a0c83 |
and adapted for Linux by
|
|
rpm-build |
0a0c83 |
.An "Andreas Gruenbacher" Aq a.gruenbacher@bestbits.at .
|