Documentation Archive Developer
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages


This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).

ACL_DUP(3)               BSD Library Functions Manual               ACL_DUP(3)

     acl_dup -- duplicate an ACL

     Standard C Library (libc, -lc)

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

     acl_dup(acl_t acl);

     The acl_dup() function returns a pointer to a copy of the ACL pointed to
     by the argument 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 as an argument.

     Any existing ACL pointers that refer to the ACL referred to by acl shall
     continue to refer to the ACL.

     Upon successful completion, this function shall return a pointer to the
     duplicate ACL.  Otherwise, a value of (acl_t)NULL shall be returned, and
     errno shall be set to indicate the error.

     If any of the following conditions occur, the acl_init() 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.

     [ENOMEM]           The acl_t to be returned requires more memory than is
                        allowed by the hardware or system-imposed memory man-agement management
                        agement constraints.

     acl(3), acl_free(3), acl_get(3), posix1e(3)

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

     Michael Smith
     Robert N M Watson

BSD                            January 28, 2000                            BSD