acl_calc_mask(3)

acl_calc_mask3

Calculate and set acl mask permissions

Usage

#include <sys/types.h>

#include <sys/acl.h>

int

acl_calc_mask(acl_t *acl_p);

Library

Standard C Library (libc, -lc)

Overview

The acl_calc_mask() function is a POSIX.1e call that calculates and set the permissions associated with the ACL_MASK ACL entry of the ACL referred to by acl_p.

The value of new permissions are the union of the permissions granted by the ACL_GROUP, ACL_GROUP_OBJ, ACL_USER tag types which match processes in the file group class contained in the ACL referred to by acl_p.

If the ACL referred to by acl_p already contains an ACL_MASK entry, its permissions shall be overwritten; if it does not contain an ACL_MASK entry, one shall be added.

Return values

The acl_calc_mask() 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_calc_mask() function fails if:

[EINVAL]

Argument acl_p does not point to a pointer to a valid ACL.

Releases

56 releases since FreeBSD 5.0-RELEASE; the text changed 33 times.

  1. 5.0
  2. 5.1–6.3
  3. 6.4
  4. 7.0
  5. 7.1
  6. 7.2
  7. 7.3
  8. 7.4
  9. 8.0
  10. 8.1
  11. 8.2
  12. 8.3
  13. 8.4
  14. 9.0
  15. 9.1
  16. 9.2
  17. 9.3
  18. 10.0
  19. 10.1
  20. 10.2
  21. 10.3
  22. 10.4
  23. 11.0
  24. 11.1
  25. 11.2
  26. 11.3
  27. 11.4
  28. 12.0
  29. 12.1
  30. 12.2
  31. 12.3
  32. 12.4
  33. 13.0–13.2
  34. 13.3–16.0

Standards

POSIX.1e is described in IEEE POSIX.1e draft 17.

History

POSIX.1e support was introduced in FreeBSD 4.0. The acl_calc_mask() function was added in FreeBSD 5.0.

Authors

The acl_calc_mask() function was written by Chris D. Faulhaber ⟨[email protected]⟩.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.