acl_get_permset_mask_np3
Manipulate acl permissions using bitmasks
Usage
#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);
Library
Standard C Library (libc, -lc)
Overview
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.
acl_maximal_permset_mask_np() sets the value pointed to by mask_p to a bitmask of all valid acl_perm_t values.
acl_get_permset_mask_np() returns via mask_p a bitmask of permissions set on the ACL entry entry_d.
acl_set_permset_mask_np() sets the permissions of ACL entry entry_d to match the permission bitmask provided by mask.
Return values
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.
Errors
The acl_get_permset_mask_np() function fails if:
- [EINVAL]
-
Argument entry_d is not a valid descriptor for an ACL entry.
The acl_set_permset_mask_np() function fails if:
- [EINVAL]
-
Argument entry_d is not a valid descriptor for an ACL entry.
- [EINVAL]
-
Argument mask is not a valid bitmask of ACL permissions.
Releases
Unchanged in 97 releases since Mac OS X 10.7.