acl_to_text — convert an ACL to text
Library
Linux Access Control Lists library (libacl, -lacl).
Synopsis
#include <sys/types.h
>
#include <sys/acl.h
>
char *
acl_to_text
(acl_t acl, ssize_t *len_p);
Description
The 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). 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) with the (void*)char returned by acl_to_text
() as an argument.
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
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
] -
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
] The character string to be returned requires more memory than is allowed by the hardware or system-imposed memory management constraints.
Standards
IEEE Std 1003.1e draft 17 (“POSIX.1e”, abandoned)