acl_dup(3)

acl_dup3

Duplicate an acl

Usage

#include <sys/types.h>

#include <sys/acl.h>

acl_t

acl_dup(acl_t acl);

Library

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

Overview

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.

Releases

13 releases since Debian 3.0 (Woody); the text changed 4 times.

  1. 3.0
  2. 3.1
  3. 4.0–5.0
  4. 6.0–10
  5. 11–Arch

Standards

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

Author

Derived from the FreeBSD manual pages written by Robert N M Watson ⟨[email protected]⟩, and adapted for Linux by Andreas Gruenbacher ⟨[email protected]⟩.

From acl 2.4.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's mdoc source.