xref: /illumos-gate/usr/src/test/libsec-tests/cmd/acl_canned.c (revision 42920ac8f798accb1375a7faa38ddefa674abf63)
1*42920ac8SGordon Ross /*
2*42920ac8SGordon Ross  * This file and its contents are supplied under the terms of the
3*42920ac8SGordon Ross  * Common Development and Distribution License ("CDDL"), version 1.0.
4*42920ac8SGordon Ross  * You may only use this file in accordance with the terms of version
5*42920ac8SGordon Ross  * 1.0 of the CDDL.
6*42920ac8SGordon Ross  *
7*42920ac8SGordon Ross  * A full copy of the text of the CDDL should have accompanied this
8*42920ac8SGordon Ross  * source.  A copy of the CDDL is also available via the Internet at
9*42920ac8SGordon Ross  * http://www.illumos.org/license/CDDL.
10*42920ac8SGordon Ross  */
11*42920ac8SGordon Ross 
12*42920ac8SGordon Ross /*
13*42920ac8SGordon Ross  * Copyright 2024 RackTop Systems, Inc.
14*42920ac8SGordon Ross  */
15*42920ac8SGordon Ross 
16*42920ac8SGordon Ross /*
17*42920ac8SGordon Ross  * ACL data for libsec tests
18*42920ac8SGordon Ross  */
19*42920ac8SGordon Ross 
20*42920ac8SGordon Ross #include <sys/types.h>
21*42920ac8SGordon Ross #include <sys/acl.h>
22*42920ac8SGordon Ross 
23*42920ac8SGordon Ross #define	AF_U	ACE_FILE_INHERIT_ACE | ACE_DIRECTORY_INHERIT_ACE
24*42920ac8SGordon Ross #define	AF_G	ACE_FILE_INHERIT_ACE | ACE_DIRECTORY_INHERIT_ACE |\
25*42920ac8SGordon Ross 		ACE_IDENTIFIER_GROUP
26*42920ac8SGordon Ross 
27*42920ac8SGordon Ross /*
28*42920ac8SGordon Ross  * This ACL contains a wide variety of users and groups,
29*42920ac8SGordon Ross  * some without names, or SIDs, etc. for test coverage.
30*42920ac8SGordon Ross  * See known users and groups in lib_stubs.c
31*42920ac8SGordon Ross  */
32*42920ac8SGordon Ross ace_t aces_canned[] = {
33*42920ac8SGordon Ross 	{
34*42920ac8SGordon Ross 		.a_who = -1,
35*42920ac8SGordon Ross 		.a_access_mask = ACE_ALL_PERMS,
36*42920ac8SGordon Ross 		.a_flags = AF_U | ACE_OWNER,
37*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
38*42920ac8SGordon Ross 	},
39*42920ac8SGordon Ross 	{
40*42920ac8SGordon Ross 		.a_who = -1,
41*42920ac8SGordon Ross 		.a_access_mask = ACE_WRITE_PERMS,
42*42920ac8SGordon Ross 		.a_flags = AF_G | ACE_GROUP,
43*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
44*42920ac8SGordon Ross 	},
45*42920ac8SGordon Ross 	{
46*42920ac8SGordon Ross 		.a_who = -1,
47*42920ac8SGordon Ross 		.a_access_mask = ACE_WRITE_PERMS,
48*42920ac8SGordon Ross 		.a_flags = ACE_EVERYONE,
49*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
50*42920ac8SGordon Ross 	},
51*42920ac8SGordon Ross 	{
52*42920ac8SGordon Ross 		.a_who = 501,
53*42920ac8SGordon Ross 		.a_access_mask = ACE_ALL_PERMS,
54*42920ac8SGordon Ross 		.a_flags = AF_U,
55*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
56*42920ac8SGordon Ross 	},
57*42920ac8SGordon Ross 	{
58*42920ac8SGordon Ross 		.a_who = 502,
59*42920ac8SGordon Ross 		.a_access_mask = ACE_WRITE_PERMS,
60*42920ac8SGordon Ross 		.a_flags = AF_G,
61*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
62*42920ac8SGordon Ross 	},
63*42920ac8SGordon Ross 	{
64*42920ac8SGordon Ross 		.a_who = 0x80000001,
65*42920ac8SGordon Ross 		.a_access_mask = ACE_ALL_PERMS,
66*42920ac8SGordon Ross 		.a_flags = AF_U,
67*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
68*42920ac8SGordon Ross 	},
69*42920ac8SGordon Ross 	{
70*42920ac8SGordon Ross 		.a_who = 0x80000002,
71*42920ac8SGordon Ross 		.a_access_mask = ACE_WRITE_PERMS,
72*42920ac8SGordon Ross 		.a_flags = AF_G,
73*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
74*42920ac8SGordon Ross 	},
75*42920ac8SGordon Ross 	{
76*42920ac8SGordon Ross 		.a_who = 0x80000003,
77*42920ac8SGordon Ross 		.a_access_mask = ACE_READ_PERMS,
78*42920ac8SGordon Ross 		.a_flags = AF_G,
79*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
80*42920ac8SGordon Ross 	},
81*42920ac8SGordon Ross 	{
82*42920ac8SGordon Ross 		.a_who = 0x80000004,
83*42920ac8SGordon Ross 		.a_access_mask = ACE_READ_PERMS,
84*42920ac8SGordon Ross 		.a_flags = AF_G,
85*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
86*42920ac8SGordon Ross 	},
87*42920ac8SGordon Ross 	{
88*42920ac8SGordon Ross 		.a_who = 0x80000005,
89*42920ac8SGordon Ross 		.a_access_mask = ACE_READ_PERMS,
90*42920ac8SGordon Ross 		.a_flags = AF_G,
91*42920ac8SGordon Ross 		.a_type = ACE_ACCESS_ALLOWED_ACE_TYPE
92*42920ac8SGordon Ross 	}
93*42920ac8SGordon Ross };
94*42920ac8SGordon Ross 
95*42920ac8SGordon Ross acl_t acl_canned = {
96*42920ac8SGordon Ross 	.acl_type = ACE_T,
97*42920ac8SGordon Ross 	.acl_cnt = sizeof (aces_canned) / sizeof (aces_canned[0]),
98*42920ac8SGordon Ross 	.acl_entry_size = sizeof (ace_t),
99*42920ac8SGordon Ross 	.acl_flags = 0,
100*42920ac8SGordon Ross 	.acl_aclp = aces_canned
101*42920ac8SGordon Ross };
102