acl_to_text(3)

acl_to_text3

Convert an acl to text

Usage

#include <sys/types.h>

#include <sys/acl.h>

char *

acl_to_text(acl_t acl, ssize_t *len_p);

Library

Standard C Library (libc, -lc)

Overview

The acl_to_text() function translates the ACL pointed to by argument acl into a NULL terminated character string. If the pointer len_p is not NULL, then the function shall return the length of the string (not including the NULL terminator) in the location pointed to by len_p. The format of the text string returned by acl_to_text() for an ACL of type ACL_TYPE_EXTENDED differs from that specified by the POSIX.1e standard, and this function cannot translate between formats.

This function allocates any memory necessary to contain the string and returns a pointer to the string. The caller should free any releasable memory, when the new string is no longer required, by calling acl_free(3) with the (void*)char as an argument.

Return values

Upon successful completion, the function shall return a pointer to the long text form of an ACL. Otherwise, a value of (char*)NULL shall be returned and errno shall be set to indicate the error.

Errors

If any of the following conditions occur, the acl_to_text() function shall return a value of (acl_t)NULL and set errno to the corresponding value:

[EINVAL]

Argument acl does not point to a valid ACL.

The ACL denoted by acl contains one or more improperly formed ACL entries, or for some other reason cannot be translated into a text form of an ACL.

[ENOMEM]

The character string to be returned requires more memory than is allowed by the hardware or software-imposed memory management constraints.

Releases

Unchanged in 135 releases since Mac OS X 10.4.

  1. 10.4–26.5

Standards

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

Authors

Michael Smith Robert N M Watson

From Libc 1752.120.2 in macOS 26.5. Parsed by carta from the page's mdoc source.