ACLTOMODE(3SEC) File Access Control Library Functions ACLTOMODE(3SEC)
NAME
acltomode, aclfrommode - convert an ACL to or from permission bits
SYNOPSIS
cc [
flag... ]
file...
-lsec [
library... ]
#include <sys/types.h>
#include <sys/acl.h>
int acltomode(
aclent_t *aclbufp,
int nentries,
mode_t *modep);
int aclfrommode(
aclent_t *aclbufp,
int nentries,
mode_t *modep);
DESCRIPTION
The
acltomode() function converts an
ACL pointed to by
aclbufp into
the permission bits buffer pointed to by
modep. If the
USER_OBJ ACL entry,
GROUP_OBJ ACL entry, or the
OTHER_OBJ ACL entry cannot be
found in the
ACL buffer, then the function fails with
errno set to
EINVAL.
The
USER_OBJ ACL entry permission bits are copied to the file owner
class bits in the permission bits buffer. The
OTHER_OBJ ACL entry
permission bits are copied to the file other class bits in the
permission bits buffer. If there is a
CLASS_OBJ (
ACL mask) entry, the
CLASS_OBJ ACL entry permission bits are copied to the file group
class bits in the permission bits buffer. Otherwise, the
GROUP_OBJ ACL entry permission bits are copied to the file group class bits in
the permission bits buffer.
The
aclfrommode() function converts the permission bits pointed to by
modep into an ACL pointed to by
aclbufp. If the
USER_OBJ ACL entry,
GROUP_OBJ ACL entry, or the
OTHER_OBJ ACL entry cannot be found in
the
ACL buffer, the function fails with
errno set to
EINVAL.
The file owner class bits from the permission bits buffer are copied
to the
USER_OBJ ACL entry. The file other class bits from the
permission bits buffer are copied to the
OTHER_OBJ ACL entry. If
there is a
CLASS_OBJ (
ACL mask) entry, the file group class bits from
the permission bits buffer are copied to the
CLASS_OBJ ACL entry, and
the
GROUP_OBJ ACL entry is not modified. Otherwise, the file group
class bits from the permission bits buffer are copied to the
GROUP_OBJ ACL entry.
The
nentries argument represents the number of
ACL entries in the
buffer pointed to by
aclbufp.
RETURN VALUES
Upon successful completion, the function returns
0. Otherwise, it
returns
-1 and sets
errno to indicate the error.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+---------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------------+-----------------+
|Interface Stability | Evolving |
+---------------------+-----------------+
|MT-Level | Unsafe |
+---------------------+-----------------+
SEE ALSO
acl(2),
attributes(7) December 10, 2001 ACLTOMODE(3SEC)