ACL_PERMSET_MASK(3) Library Functions Manual ACL_PERMSET_MASK(3)

acl_permset_maskManipulate ACL permissions using bitmasks

Standard C Library (libc, -lc)

#include <sys/types.h>
#include <sys/acl.h>

int
acl_maximal_permset_mask_np(acl_permset_mask_t * mask_p);

int
acl_get_permset_mask_np(acl_entry_t entry_d, acl_permset_mask_t * mask_p);

int
acl_set_permset_mask_np(acl_entry_t entry_d, acl_permset_mask_t mask);

The acl_permset_mask_t functions are a Darwin extension to the POSIX.1e ACL standard which allow manipulation of permissions in an acl_entry_t using a bitmask of type acl_permset_mask_t rather than a constructed acl_permset_t (as done by acl_get_permset(3) and acl_set_permset(3)).

acl_permset_mask_t values may be constructed using bitwise operations over acl_perm_t values.

() sets the value pointed to by mask_p to a bitmask of all valid acl_perm_t values.

() returns via mask_p a bitmask of permissions set on the ACL entry entry_d.

() sets the permissions of ACL entry entry_d to match the permission bitmask provided by mask.

The acl_maximal_permset_mask_np() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.


The acl_get_permset_mask_np() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.


The acl_set_permset_mask_np() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.

The acl_get_permset_mask_np() function fails if:

[]
Argument entry_d is not a valid descriptor for an ACL entry.

The acl_set_permset_mask_np() function fails if:

[]
Argument entry_d is not a valid descriptor for an ACL entry.
[]
Argument mask is not a valid bitmask of ACL permissions.

acl(3), acl_add_perm(3), acl_clear_perms(3), acl_delete_perm(3), acl_get_permset(3), acl_set_permset(3), posix1e(3)

Jeremy Huddleston

August 24, 2010 Darwin