ACL_DUP(3)

NAME
acl_dup - duplicate an ACL

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

SYNOPSIS
#include <sys/types.h>
#include <sys/acl.h>
acl_t
acl_dup(acl_t acl);

DESCRIPTION
The acl_dup() function returns a pointer to a copy of the ACL pointed to by acl.

This function may cause memory to be allocated. The caller should free any releasable memory, when the new ACL is no longer required, by calling acl_free(3) with the (void*)acl_t returned by acl_dup() as an argument.

RETURN VALUE
On success, this function returns a pointer to the working storage. On error, a value of (acl_t)NULL is returned, and errno is set appropriately.

ERRORS
If any of the following conditions occur, the acl_dup() function returns a value of (acl_t)NULL and sets errno to the corresponding value:

[EINVAL]
    The argument acl is not a valid pointer to an ACL.

[ENOMEM]
    The acl_t 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)

SEE ALSO
acl_free(3), acl_get_entry(3), acl(5)

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>.