xref: /freebsd/lib/libc/posix1e/acl_is_trivial_np.3 (revision a03411e84728e9b267056fd31c7d1d9d1dc1b01e)
1.\"-
2.\" Copyright (c) 2008, 2009 Edward Tomasz Napierala
3.\"
4.\" This software was developed by Robert Watson for the TrustedBSD Project.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25.\" SUCH DAMAGE.
26.\"
27.Dd June 19, 2023
28.Dt ACL_IS_TRIVIAL_NP 3
29.Os
30.Sh NAME
31.Nm acl_is_trivial_np
32.Nd determine whether ACL is trivial
33.Sh LIBRARY
34.Lb libc
35.Sh SYNOPSIS
36.In sys/types.h
37.In sys/acl.h
38.Ft int
39.Fn acl_is_trivial_np "const acl_t aclp" "int *trivialp"
40.Sh DESCRIPTION
41The
42.Fn acl_is_trivial_np
43function determines whether the ACL pointed to by the argument
44.Va acl
45is trivial.
46Upon successful completion, the location referred to by the argument
47.Fa trivialp
48will be set to 1, if the ACL
49.Fa aclp
50points to is trivial, or 0 if it's not.
51.Pp
52ACL is trivial if it can be fully expressed as a file mode without losing
53any access rules.
54For POSIX.1e ACLs, ACL is trivial if it has the three required entries,
55one for owner, one for owning group, and one for other.
56For NFSv4 ACLs, ACL is trivial if it is identical to the ACL generated by
57.Xr acl_strip_np 3 .
58Files that have non-trivial ACL have a plus sign appended after mode bits
59in "ls -l" output.
60.Sh RETURN VALUES
61.Rv -std acl_is_trivial_np
62.Sh SEE ALSO
63.Xr acl 3 ,
64.Xr acl_strip_np 3 ,
65.Xr posix1e 3
66.Sh STANDARDS
67POSIX.1e is described in IEEE POSIX.1e draft 17.
68Discussion
69of the draft continues on the cross-platform POSIX.1e implementation
70mailing list.
71To join this list, see the
72.Fx
73POSIX.1e implementation
74page for more information.
75.Sh HISTORY
76POSIX.1e support was introduced in
77.Fx 4.0 .
78The
79.Fn acl_is_trivial_np
80function was added in
81.Fx 8.0 .
82.Sh AUTHORS
83.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org
84