acl_cmp_np(3)

acl_cmp_np3

Compare between two acls

Usage

#include <sys/types.h>

#include <sys/acl.h>

int

acl_cmp_np(acl_t acl1, acl_t acl2);

Library

Standard C Library (libc, -lc)

Overview

The acl_cmp_np() function is a non-portable call that checks if ACLs pointed to by acl1 and acl2 are equivalent. The two ACLs are considered equal when they contain the same entries with matching tag types, qualifiers and permissions.

Return values

Upon successful completion, this function returns 0 if the given ACLs are equivalent and 1 if they differ. Otherwise, the value -1 is returned, and errno indicates the error.

Errors

If any of the following conditions occur, the acl_cmp_np() function shall return a value of -1 and set errno to the corresponding value:

[EINVAL]

Either first or second argument does not point to a valid ACL.

Releases

9 releases since FreeBSD 14.0-RELEASE; the text changed 1 time.

  1. 14.0–14.2
  2. 14.3–16.0

Standards

POSIX.1e is described in IEEE POSIX.1e draft 17. Discussion of the draft continues on the cross-platform POSIX.1e implementation mailing list. To join this list, see the FreeBSD POSIX.1e implementation page for more information.

History

POSIX.1e support was introduced in FreeBSD 4.0, and development continues.

Authors

Gleb Popov

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.