aclsort(3) manual page
Table of Contents
aclsort - sort an ACL
#include <sys/acl.h>
int aclsort(int nentries,
int calclass, aclent_t *aclbufp);
aclbufp points to a buffer
containing ACL entries. nentries specifies the number of ACL entries in
the buffer. calclass, if non-zero, indicates that the CLASS_OBJ
permissions
should be recalculated. The union of the permission bits associated with
all ACL entries in the buffer other than CLASS_OBJ, OTHER_OBJ
, and USER_OBJ
is calculated. The result is copied to the permission bits associated with
the CLASS_OBJ
entry.
aclsort() sorts the contents of the ACL buffer as follows:
- Entries will be in the order
- USER_OBJ, USER, GROUP_OBJ, GROUP, CLASS_OBJ,
OTHER_OBJ, DEF_USER_OBJ, DEF_USER, DEF_GROUP_OBJ, DEF_GROUP, DEF_CLASS_OBJ
,
and DEF_OTHER_OBJ
.
- Entries of type USER, GROUP, DEF_USER, and DEF_GROUP
will sorted in increasing
- order by id.
aclsort() will succeed if all of
the following are true:
- There is exactly one entry each of type USER_OBJ,
GROUP_OBJ, CLASS_OBJ,
- and OTHER_OBJ
.
- There is exactly one entry each of
type DEF_USER_OBJ, DEF_GROUP_OBJ,
- DEF_CLASS_OBJ, and DEF_OTHER_OBJ
if there
are any default entries.
- Entries of type USER, GROUP, DEF_USER, or DEF_GROUP
may not contain
- duplicate entries. A duplicate entry is one of the same
type containing the same numeric id.
Upon successful completion,
the return value is 0. Otherwise, the return value is -1.
acl(2)
,
aclcheck(3)
Table of Contents