ACL\_FROM\_TEXT(3) Library Functions Manual ACL\_FROM\_TEXT(3)

# [NAME](#NAME)

`acl_to_text` — convert an ACL to text

# [LIBRARY](#LIBRARY)

Linux Access Control Lists library (libacl, -lacl).

# [SYNOPSIS](#SYNOPSIS)

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

`char *`  
`acl_to_text`(`acl_t acl`, `ssize_t *len_p`);

# [DESCRIPTION](#DESCRIPTION)

The [`acl_to_text`](#acl_to_text)() function translates the ACL pointed to by the argument `acl` into a `NULL` terminated character string. If the pointer `len_p` is not `NULL`, then the function returns 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`() is the long text form defined in [acl(5)](/man/os/acl/acl.5). The ACL referred to by `acl` is not changed.

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)](/man/os/acl/acl_free.3) with the `(void*)char` returned by [`acl_to_text`](#acl_to_text~2)() as an argument.

# [RETURN VALUE](#RETURN_VALUE)

On success, this function returns a pointer to the long text form of the ACL. On error, a value of `(char *)NULL` is returned, and `errno` is set appropriately.

# [ERRORS](#ERRORS)

If any of the following conditions occur, the `acl_to_text`() function returns a value of `(char *)NULL` and sets `errno` to the corresponding value:

\[[`EINVAL`](#EINVAL)]

The argument `acl` is not a valid pointer to an ACL.

The ACL referenced 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`](#ENOMEM)]

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

# [STANDARDS](#STANDARDS)

IEEE Std 1003.1e draft 17 (“POSIX.1e”, abandoned)

# [SEE ALSO](#SEE_ALSO)

[acl\_free(3)](/man/os/acl/acl_free.3), [acl\_from\_text(3)](/man/os/acl/acl_from_text.3), [acl\_to\_any\_text(3)](/man/os/acl/acl_to_any_text.3), [acl(5)](/man/os/acl/acl.5)

# [AUTHOR](#AUTHOR)

Derived from the FreeBSD manual pages written by Robert N M Watson ⟨rwatson@FreeBSD.org⟩, and adapted for Linux by Andreas Gruenbacher ⟨andreas.gruenbacher@gmail.com⟩.

March 23, 2002 Linux ACL

---

Document: acl_to_text(3) from acl 2.4.0-r5 (Chainguard OS)
Source: https://git.savannah.nongnu.org/git/acl.git
