ACL\_DELETE\_ENTRY(3) Library Functions Manual ACL\_DELETE\_ENTRY(3)

# [NAME](#NAME)

`acl_delete_entry` — delete an ACL entry

# [LIBRARY](#LIBRARY)

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

# [SYNOPSIS](#SYNOPSIS)

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

`int`  
`acl_delete_entry`(`acl_t acl`, `acl_entry_t entry_d`);

# [DESCRIPTION](#DESCRIPTION)

The [`acl_delete_entry`](#acl_delete_entry)() function removes the ACL entry indicated by the `entry_d` descriptor from the ACL pointed to by `acl`. Any existing ACL entry descriptors that refer to entries in `acl` other than that referred to by `entry_d` continue to refer to the same entries. The argument `entry_d` and any other ACL entry descriptors that refer to the same ACL entry are undefined after this function completes. Any existing ACL pointers that refer to the ACL referred to by `acl` continue to refer to the ACL.

# [RETURN VALUE](#RETURN_VALUE)

The `acl_delete_entry`() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable `errno` is set to indicate the error.

# [ERRORS](#ERRORS)

If any of the following conditions occur, the `acl_delete_entry`() function returns `-1` and sets `errno` to the corresponding value:

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

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

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

# [STANDARDS](#STANDARDS)

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

# [SEE ALSO](#SEE_ALSO)

[acl\_copy\_entry(3)](/man/os/acl/acl_copy_entry.3), [acl\_create\_entry(3)](/man/os/acl/acl_create_entry.3), [acl\_get\_entry(3)](/man/os/acl/acl_get_entry.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_delete_entry(3) from acl 2.4.0-r4 (Chainguard OS)
Source: https://git.savannah.nongnu.org/git/acl.git
