Reference

acl_get_permset_mask_np(3)

Manipulate ACL permissions using bitmasks

NAME

acl_permset_mask – Manipulate ACL permissions using bitmasks

LIBRARY

Standard C Library (libc, -lc)

SYNOPSIS

#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);

DESCRIPTION

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.

SEE ALSO

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

AUTHORS

Jeremy Huddleston