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(5) for descriptions of the following attributes:


+---------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------------+-----------------+
|Interface Stability | Evolving |
+---------------------+-----------------+
|MT-Level | Unsafe |
+---------------------+-----------------+

SEE ALSO


acl(2), attributes(5)


December 10, 2001 ACLTOMODE(3SEC)