xref: /aosp_15_r20/external/selinux/secilc/test/deny_rule_test2.cil (revision 2d543d20722ada2425b5bdab9d0d1d29470e7bba)
1*2d543d20SAndroid Build Coastguard Worker(class CLASS (PERM))
2*2d543d20SAndroid Build Coastguard Worker(class ca (pa1 pa2 pa3 pa4 pa5 pa6 pa7 pa8 pa9))
3*2d543d20SAndroid Build Coastguard Worker(class cb (pb1 pb2 pb3 pb4 pb5 pb6 pb7 pb8 pb9))
4*2d543d20SAndroid Build Coastguard Worker(class cc (pc1 pc2 pc3 pc4 pc5 pc6 pc7 pc8 pc9))
5*2d543d20SAndroid Build Coastguard Worker(class cd (pd1 pd2 pd3 pd4 pd5 pd6 pd7 pd8 pd9))
6*2d543d20SAndroid Build Coastguard Worker(class ce (pe1 pe2 pe3 pe4 pe5 pe6 pe7 pe8 pe9))
7*2d543d20SAndroid Build Coastguard Worker(class cf (pf1 pf2 pf3 pf4 pf5 pf6 pf7 pf8 pf9))
8*2d543d20SAndroid Build Coastguard Worker(class cg (pg1 pg2 pg3 pg4 pg5 pg6 pg7 pg8 pg9))
9*2d543d20SAndroid Build Coastguard Worker(class ch (ph1 ph2 ph3 ph4 ph5 ph6 ph7 ph8 ph9))
10*2d543d20SAndroid Build Coastguard Worker(class ci (pi1 pi2 pi3 pi4 pi5 pi6 pi7 pi8 pi9))
11*2d543d20SAndroid Build Coastguard Worker(class cj (pj1 pj2 pj3 pj4 pj5 pj6 pj7 pj8 pj9))
12*2d543d20SAndroid Build Coastguard Worker(classorder (CLASS ca cb cc cd ce cf cg ch ci cj))
13*2d543d20SAndroid Build Coastguard Worker(sid SID)
14*2d543d20SAndroid Build Coastguard Worker(sidorder (SID))
15*2d543d20SAndroid Build Coastguard Worker(user USER)
16*2d543d20SAndroid Build Coastguard Worker(role ROLE)
17*2d543d20SAndroid Build Coastguard Worker(type TYPE)
18*2d543d20SAndroid Build Coastguard Worker(category CAT)
19*2d543d20SAndroid Build Coastguard Worker(categoryorder (CAT))
20*2d543d20SAndroid Build Coastguard Worker(sensitivity SENS)
21*2d543d20SAndroid Build Coastguard Worker(sensitivityorder (SENS))
22*2d543d20SAndroid Build Coastguard Worker(sensitivitycategory SENS (CAT))
23*2d543d20SAndroid Build Coastguard Worker(allow TYPE self (CLASS (PERM)))
24*2d543d20SAndroid Build Coastguard Worker(roletype ROLE TYPE)
25*2d543d20SAndroid Build Coastguard Worker(userrole USER ROLE)
26*2d543d20SAndroid Build Coastguard Worker(userlevel USER (SENS))
27*2d543d20SAndroid Build Coastguard Worker(userrange USER ((SENS)(SENS (CAT))))
28*2d543d20SAndroid Build Coastguard Worker(sidcontext SID (USER ROLE TYPE ((SENS)(SENS))))
29*2d543d20SAndroid Build Coastguard Worker
30*2d543d20SAndroid Build Coastguard Worker(type ta)
31*2d543d20SAndroid Build Coastguard Worker(type tb)
32*2d543d20SAndroid Build Coastguard Worker(type tc)
33*2d543d20SAndroid Build Coastguard Worker(type td)
34*2d543d20SAndroid Build Coastguard Worker(type te)
35*2d543d20SAndroid Build Coastguard Worker(type tf)
36*2d543d20SAndroid Build Coastguard Worker(type tg)
37*2d543d20SAndroid Build Coastguard Worker(type th)
38*2d543d20SAndroid Build Coastguard Worker(type ti)
39*2d543d20SAndroid Build Coastguard Worker(type tj)
40*2d543d20SAndroid Build Coastguard Worker(type tk)
41*2d543d20SAndroid Build Coastguard Worker(type tl)
42*2d543d20SAndroid Build Coastguard Worker(type tm)
43*2d543d20SAndroid Build Coastguard Worker(type tn)
44*2d543d20SAndroid Build Coastguard Worker(type to)
45*2d543d20SAndroid Build Coastguard Worker(type tp)
46*2d543d20SAndroid Build Coastguard Worker(type tq)
47*2d543d20SAndroid Build Coastguard Worker(type tr)
48*2d543d20SAndroid Build Coastguard Worker(type ts)
49*2d543d20SAndroid Build Coastguard Worker(type tt)
50*2d543d20SAndroid Build Coastguard Worker(type tu)
51*2d543d20SAndroid Build Coastguard Worker(type tv)
52*2d543d20SAndroid Build Coastguard Worker(type tw)
53*2d543d20SAndroid Build Coastguard Worker(type tx)
54*2d543d20SAndroid Build Coastguard Worker(type ty)
55*2d543d20SAndroid Build Coastguard Worker(type tz)
56*2d543d20SAndroid Build Coastguard Worker
57*2d543d20SAndroid Build Coastguard Worker(typeattribute a_s1)
58*2d543d20SAndroid Build Coastguard Worker(typeattributeset a_s1 (ta tb tc td te tf tg th tk tl tm tn ts tt))
59*2d543d20SAndroid Build Coastguard Worker(typeattribute a_t1)
60*2d543d20SAndroid Build Coastguard Worker(typeattributeset a_t1 (ta tb tc td te tf ti tj tk tl to tp tu tv))
61*2d543d20SAndroid Build Coastguard Worker(typeattribute a_s2)
62*2d543d20SAndroid Build Coastguard Worker(typeattributeset a_s2 (ta tb tc td tg th ti tj tm tn tq tr tw tx))
63*2d543d20SAndroid Build Coastguard Worker(typeattribute a_t2)
64*2d543d20SAndroid Build Coastguard Worker(typeattributeset a_t2 (ta tb te tf tg th ti tj to tp tq tr ty tz))
65*2d543d20SAndroid Build Coastguard Worker(typeattribute a_s3)
66*2d543d20SAndroid Build Coastguard Worker(typeattributeset a_s3 (and a_s1 (not a_s2)))
67*2d543d20SAndroid Build Coastguard Worker(typeattribute a_s4)
68*2d543d20SAndroid Build Coastguard Worker(typeattributeset a_s4 (and a_s1 a_s2))
69*2d543d20SAndroid Build Coastguard Worker
70*2d543d20SAndroid Build Coastguard Worker
71*2d543d20SAndroid Build Coastguard Worker(typeattribute aab)
72*2d543d20SAndroid Build Coastguard Worker(typeattributeset aab (ta tb))
73*2d543d20SAndroid Build Coastguard Worker
74*2d543d20SAndroid Build Coastguard Worker(typeattribute aNab)
75*2d543d20SAndroid Build Coastguard Worker(typeattributeset aNab (and (all) (not (ta tb))))
76*2d543d20SAndroid Build Coastguard Worker
77*2d543d20SAndroid Build Coastguard Worker(typeattribute aNac)
78*2d543d20SAndroid Build Coastguard Worker(typeattributeset aNac (and (all) (not (ta tc))))
79*2d543d20SAndroid Build Coastguard Worker
80*2d543d20SAndroid Build Coastguard Worker(typeattribute aNbc)
81*2d543d20SAndroid Build Coastguard Worker(typeattributeset aNbc (and (all) (not (tb tc))))
82*2d543d20SAndroid Build Coastguard Worker
83*2d543d20SAndroid Build Coastguard Worker(typeattribute acd)
84*2d543d20SAndroid Build Coastguard Worker(typeattributeset aab (tc td))
85*2d543d20SAndroid Build Coastguard Worker
86*2d543d20SAndroid Build Coastguard Worker(typeattribute aNacd)
87*2d543d20SAndroid Build Coastguard Worker(typeattributeset aNacd (and (all) (not (ta tc td))))
88*2d543d20SAndroid Build Coastguard Worker
89*2d543d20SAndroid Build Coastguard Worker(typeattribute aabc)
90*2d543d20SAndroid Build Coastguard Worker(typeattributeset aabc (ta tb tc))
91*2d543d20SAndroid Build Coastguard Worker
92*2d543d20SAndroid Build Coastguard Worker
93*2d543d20SAndroid Build Coastguard Worker; Test 01
94*2d543d20SAndroid Build Coastguard Worker(allow ta notself (ca (pa1)))
95*2d543d20SAndroid Build Coastguard Worker(deny ta notself (ca (pa1)))
96*2d543d20SAndroid Build Coastguard Worker(neverallow ta notself (ca (pa1)))
97*2d543d20SAndroid Build Coastguard Worker
98*2d543d20SAndroid Build Coastguard Worker; Test 02
99*2d543d20SAndroid Build Coastguard Worker(allow aab notself (ca (pa2)))
100*2d543d20SAndroid Build Coastguard Worker(deny aab notself (ca (pa2)))
101*2d543d20SAndroid Build Coastguard Worker(neverallow aab notself (ca (pa2)))
102*2d543d20SAndroid Build Coastguard Worker
103*2d543d20SAndroid Build Coastguard Worker; Test 03
104*2d543d20SAndroid Build Coastguard Worker(allow ta notself (ca (pa3)))
105*2d543d20SAndroid Build Coastguard Worker(deny aab notself (ca (pa3)))
106*2d543d20SAndroid Build Coastguard Worker(neverallow aab notself (ca (pa3)))
107*2d543d20SAndroid Build Coastguard Worker
108*2d543d20SAndroid Build Coastguard Worker; Test 04
109*2d543d20SAndroid Build Coastguard Worker(allow aab notself (ca (pa4)))
110*2d543d20SAndroid Build Coastguard Worker(deny ta notself (ca (pa4)))
111*2d543d20SAndroid Build Coastguard Worker(neverallow ta notself (ca (pa4)))
112*2d543d20SAndroid Build Coastguard Worker; (neverallow tb notself (ca (pa4))) ; This check should fail
113*2d543d20SAndroid Build Coastguard Worker
114*2d543d20SAndroid Build Coastguard Worker; Test 11
115*2d543d20SAndroid Build Coastguard Worker(allow ta notself (cb (pb1)))
116*2d543d20SAndroid Build Coastguard Worker(deny ta tb (cb (pb1)))
117*2d543d20SAndroid Build Coastguard Worker(neverallow ta tb (cb (pb1)))
118*2d543d20SAndroid Build Coastguard Worker; (neverallow ta aNab (cb (pb1))) ; This check should fail
119*2d543d20SAndroid Build Coastguard Worker
120*2d543d20SAndroid Build Coastguard Worker; Test 12
121*2d543d20SAndroid Build Coastguard Worker(allow ta tb (cb (pb2)))
122*2d543d20SAndroid Build Coastguard Worker(deny ta notself (cb (pb2)))
123*2d543d20SAndroid Build Coastguard Worker(neverallow ta notself (cb (pb2)))
124*2d543d20SAndroid Build Coastguard Worker
125*2d543d20SAndroid Build Coastguard Worker; Test 13
126*2d543d20SAndroid Build Coastguard Worker(allow aab notself (cb (pb3)))
127*2d543d20SAndroid Build Coastguard Worker(deny ta tb (cb (pb3)))
128*2d543d20SAndroid Build Coastguard Worker(neverallow ta tb (cb (pb3)))
129*2d543d20SAndroid Build Coastguard Worker; (neverallow ta aNab (cb (pb3)))    ; This check should fail
130*2d543d20SAndroid Build Coastguard Worker; (neverallow tb notself (cb (pb3))) ; This check should fail
131*2d543d20SAndroid Build Coastguard Worker
132*2d543d20SAndroid Build Coastguard Worker; Test 14
133*2d543d20SAndroid Build Coastguard Worker(allow ta tb (cb (pb4)))
134*2d543d20SAndroid Build Coastguard Worker(deny aab notself (cb (pb4)))
135*2d543d20SAndroid Build Coastguard Worker(neverallow aab notself (cb (pb4)))
136*2d543d20SAndroid Build Coastguard Worker
137*2d543d20SAndroid Build Coastguard Worker; Test 15
138*2d543d20SAndroid Build Coastguard Worker(allow aab notself (cb (pb5)))
139*2d543d20SAndroid Build Coastguard Worker(deny aab tc (cb (pb5)))
140*2d543d20SAndroid Build Coastguard Worker(neverallow aab tc (cb (pb5)))
141*2d543d20SAndroid Build Coastguard Worker; (neverallow ta aNac (cb (pb5)))    ; This check should fail
142*2d543d20SAndroid Build Coastguard Worker; (neverallow tb aNbc (cb (pb5)))    ; This check should fail
143*2d543d20SAndroid Build Coastguard Worker
144*2d543d20SAndroid Build Coastguard Worker; Test 16
145*2d543d20SAndroid Build Coastguard Worker(allow aab tc (cb (pb6)))
146*2d543d20SAndroid Build Coastguard Worker(deny aab notself (cb (pb6)))
147*2d543d20SAndroid Build Coastguard Worker(neverallow aab notself (cb (pb6)))
148*2d543d20SAndroid Build Coastguard Worker
149*2d543d20SAndroid Build Coastguard Worker; Test 17
150*2d543d20SAndroid Build Coastguard Worker(allow aab notself (cb (pb7)))
151*2d543d20SAndroid Build Coastguard Worker(deny aab acd (cb (pb7)))
152*2d543d20SAndroid Build Coastguard Worker(neverallow aab acd (cb (pb7)))
153*2d543d20SAndroid Build Coastguard Worker; (neverallow aab aNacd (cb (pb7)))    ; This check should fail
154*2d543d20SAndroid Build Coastguard Worker
155*2d543d20SAndroid Build Coastguard Worker; Test 18
156*2d543d20SAndroid Build Coastguard Worker(allow aab acd (cb (pb7)))
157*2d543d20SAndroid Build Coastguard Worker(deny aab notself (cb (pb7)))
158*2d543d20SAndroid Build Coastguard Worker(neverallow aab notself (cb (pb7)))
159*2d543d20SAndroid Build Coastguard Worker
160*2d543d20SAndroid Build Coastguard Worker; Test 21
161*2d543d20SAndroid Build Coastguard Worker(allow aab other (cc (pc1)))
162*2d543d20SAndroid Build Coastguard Worker(deny aab other (cc (pc1)))
163*2d543d20SAndroid Build Coastguard Worker(neverallow aab other (cc (pc1)))
164*2d543d20SAndroid Build Coastguard Worker
165*2d543d20SAndroid Build Coastguard Worker; Test 22
166*2d543d20SAndroid Build Coastguard Worker(allow aabc other (cc (pc2)))
167*2d543d20SAndroid Build Coastguard Worker(deny aab other (cc (pc2)))
168*2d543d20SAndroid Build Coastguard Worker(neverallow aab other (cc (pc2)))
169*2d543d20SAndroid Build Coastguard Worker; (neverallow tc aab (cc (pc2))) ; This check should fail
170*2d543d20SAndroid Build Coastguard Worker
171*2d543d20SAndroid Build Coastguard Worker; Test 23
172*2d543d20SAndroid Build Coastguard Worker(allow aab other (cc (pc3)))
173*2d543d20SAndroid Build Coastguard Worker(deny aabc other (cc (pc3)))
174*2d543d20SAndroid Build Coastguard Worker(neverallow aabc other (cc (pc3)))
175*2d543d20SAndroid Build Coastguard Worker
176*2d543d20SAndroid Build Coastguard Worker; Test 31
177*2d543d20SAndroid Build Coastguard Worker(allow aab other (cd (pd1)))
178*2d543d20SAndroid Build Coastguard Worker(deny aab aab (cd (pd1)))
179*2d543d20SAndroid Build Coastguard Worker(neverallow aab aab (cd (pd1)))
180*2d543d20SAndroid Build Coastguard Worker
181*2d543d20SAndroid Build Coastguard Worker; Test 32
182*2d543d20SAndroid Build Coastguard Worker(allow aab aab (cd (pd2)))
183*2d543d20SAndroid Build Coastguard Worker(deny aab other (cd (pd2)))
184*2d543d20SAndroid Build Coastguard Worker(neverallow aab other (cd (pd2)))
185*2d543d20SAndroid Build Coastguard Worker; (neverallow aab self (cd (pd2))) ; This check should fail
186*2d543d20SAndroid Build Coastguard Worker
187*2d543d20SAndroid Build Coastguard Worker; Test 33
188*2d543d20SAndroid Build Coastguard Worker(allow ta tb (cd (pd3)))
189*2d543d20SAndroid Build Coastguard Worker(deny aab other (cd (pd3)))
190*2d543d20SAndroid Build Coastguard Worker(neverallow aab other (cd (pd3)))
191*2d543d20SAndroid Build Coastguard Worker
192*2d543d20SAndroid Build Coastguard Worker; Test 34
193*2d543d20SAndroid Build Coastguard Worker(allow aab other (cd (pd4)))
194*2d543d20SAndroid Build Coastguard Worker(deny ta tb (cd (pd4)))
195*2d543d20SAndroid Build Coastguard Worker(neverallow ta tb (cd (pd4)))
196*2d543d20SAndroid Build Coastguard Worker; (neverallow tb ta (cd (pd4))) ; This check should fail
197*2d543d20SAndroid Build Coastguard Worker
198*2d543d20SAndroid Build Coastguard Worker
199*2d543d20SAndroid Build Coastguard Worker; Test 61
200*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ce (pe1)))
201*2d543d20SAndroid Build Coastguard Worker(deny a_s2 a_t2 (ce (pe1)))
202*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 a_t2 (ce (pe1)))
203*2d543d20SAndroid Build Coastguard Worker; Below should fail
204*2d543d20SAndroid Build Coastguard Worker(typeattribute a61a)
205*2d543d20SAndroid Build Coastguard Worker(typeattributeset a61a (and a_s4 (not a_t2)))
206*2d543d20SAndroid Build Coastguard Worker(typeattribute a61b)
207*2d543d20SAndroid Build Coastguard Worker(typeattributeset a61b (and a_s4 a_t2))
208*2d543d20SAndroid Build Coastguard Worker(typeattribute a61c)
209*2d543d20SAndroid Build Coastguard Worker(typeattributeset a61c (and (all) (not a_t2)))
210*2d543d20SAndroid Build Coastguard Worker(typeattribute a61d)
211*2d543d20SAndroid Build Coastguard Worker(typeattributeset a61d (and a61c (not a_s4)))
212*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 notself (ce (pe1))) ; This check should fail
213*2d543d20SAndroid Build Coastguard Worker; (neverallow a61a other (ce (pe1)))   ; This check should fail
214*2d543d20SAndroid Build Coastguard Worker; (neverallow a61a a61d (ce (pe1)))    ; This check should fail
215*2d543d20SAndroid Build Coastguard Worker; (neverallow a61b a61c (ce (pe1)))    ; This check should fail
216*2d543d20SAndroid Build Coastguard Worker
217*2d543d20SAndroid Build Coastguard Worker; Test 62
218*2d543d20SAndroid Build Coastguard Worker(allow tg notself (ce (pe2)))
219*2d543d20SAndroid Build Coastguard Worker(deny a_s2 a_t2 (ce (pe2)))
220*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 a_t2 (ce (pe2)))
221*2d543d20SAndroid Build Coastguard Worker
222*2d543d20SAndroid Build Coastguard Worker; Test 63
223*2d543d20SAndroid Build Coastguard Worker(allow tm notself (ce (pe3)))
224*2d543d20SAndroid Build Coastguard Worker(deny a_s2 a_t2 (ce (pe3)))
225*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 a_t2 (ce (pe3)))
226*2d543d20SAndroid Build Coastguard Worker
227*2d543d20SAndroid Build Coastguard Worker; Test 64
228*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ce (pe4)))
229*2d543d20SAndroid Build Coastguard Worker(deny tg a_t2 (ce (pe4)))
230*2d543d20SAndroid Build Coastguard Worker(neverallow tg a_t2 (ce (pe4)))
231*2d543d20SAndroid Build Coastguard Worker
232*2d543d20SAndroid Build Coastguard Worker; Test 65
233*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ce (pe5)))
234*2d543d20SAndroid Build Coastguard Worker(deny tm a_t2 (ce (pe5)))
235*2d543d20SAndroid Build Coastguard Worker(neverallow tm a_t2 (ce (pe5)))
236*2d543d20SAndroid Build Coastguard Worker
237*2d543d20SAndroid Build Coastguard Worker; Test 66
238*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ce (pe6)))
239*2d543d20SAndroid Build Coastguard Worker(deny a_s2 tg (ce (pe6)))
240*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 tg (ce (pe6)))
241*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 notself (ce (pe6))) ; This check should fail
242*2d543d20SAndroid Build Coastguard Worker
243*2d543d20SAndroid Build Coastguard Worker; Test 67
244*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ce (pe7)))
245*2d543d20SAndroid Build Coastguard Worker(deny a_s2 ty (ce (pe7)))
246*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 ty (ce (pe7)))
247*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 notself (ce (pe7))) ; This check should fail
248*2d543d20SAndroid Build Coastguard Worker
249*2d543d20SAndroid Build Coastguard Worker; Test 68
250*2d543d20SAndroid Build Coastguard Worker(typeattribute a68)
251*2d543d20SAndroid Build Coastguard Worker(typeattributeset a68 (tg tm))
252*2d543d20SAndroid Build Coastguard Worker(allow a68 notself (ce (pe8)))
253*2d543d20SAndroid Build Coastguard Worker(deny a_s2 a_t2 (ce (pe8)))
254*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 a_t2 (ce (pe8)))
255*2d543d20SAndroid Build Coastguard Worker
256*2d543d20SAndroid Build Coastguard Worker; Test 71
257*2d543d20SAndroid Build Coastguard Worker(allow a_s1 a_t1 (cf (pf1)))
258*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (cf (pf1)))
259*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (cf (pf1)))
260*2d543d20SAndroid Build Coastguard Worker; Below should fail
261*2d543d20SAndroid Build Coastguard Worker(typeattribute a71a)
262*2d543d20SAndroid Build Coastguard Worker(typeattributeset a71a (and a_s4 a_t1))
263*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 a_t1 (cf (pf1))) ; This check should fail
264*2d543d20SAndroid Build Coastguard Worker; (neverallow a71a self (cf (pf1))) ; This check should fail
265*2d543d20SAndroid Build Coastguard Worker
266*2d543d20SAndroid Build Coastguard Worker; Test 72
267*2d543d20SAndroid Build Coastguard Worker(allow tc a_t1 (cf (pf2)))
268*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (cf (pf2)))
269*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (cf (pf2)))
270*2d543d20SAndroid Build Coastguard Worker
271*2d543d20SAndroid Build Coastguard Worker; Test 73
272*2d543d20SAndroid Build Coastguard Worker(allow tm a_t1 (cf (pf3)))
273*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (cf (pf3)))
274*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (cf (pf3)))
275*2d543d20SAndroid Build Coastguard Worker
276*2d543d20SAndroid Build Coastguard Worker; Test 74
277*2d543d20SAndroid Build Coastguard Worker(allow a_s1 a_t1 (cf (pf4)))
278*2d543d20SAndroid Build Coastguard Worker(deny tc notself (cf (pf4)))
279*2d543d20SAndroid Build Coastguard Worker(neverallow tc notself (cf (pf4)))
280*2d543d20SAndroid Build Coastguard Worker
281*2d543d20SAndroid Build Coastguard Worker; Test 75
282*2d543d20SAndroid Build Coastguard Worker(allow a_s1 a_t1 (cf (pf5)))
283*2d543d20SAndroid Build Coastguard Worker(deny tm notself (cf (pf5)))
284*2d543d20SAndroid Build Coastguard Worker(neverallow tm notself (cf (pf5)))
285*2d543d20SAndroid Build Coastguard Worker
286*2d543d20SAndroid Build Coastguard Worker; Test 76
287*2d543d20SAndroid Build Coastguard Worker(allow a_s1 tc (cf (pf6)))
288*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (cf (pf6)))
289*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (cf (pf6)))
290*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 tc (cf (pf6))) ; This check should fail
291*2d543d20SAndroid Build Coastguard Worker
292*2d543d20SAndroid Build Coastguard Worker; Test 77
293*2d543d20SAndroid Build Coastguard Worker(allow a_s1 tu (cf (pf7)))
294*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (cf (pf7)))
295*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (cf (pf7)))
296*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 tu (cf (pf7))) ; This check should fail
297*2d543d20SAndroid Build Coastguard Worker
298*2d543d20SAndroid Build Coastguard Worker; Test 78
299*2d543d20SAndroid Build Coastguard Worker(typeattribute a78)
300*2d543d20SAndroid Build Coastguard Worker(typeattributeset a78 (tc tm))
301*2d543d20SAndroid Build Coastguard Worker(allow a_s1 a_t1 (cf (pf8)))
302*2d543d20SAndroid Build Coastguard Worker(deny a78 notself (cf (pf8)))
303*2d543d20SAndroid Build Coastguard Worker(neverallow a78 notself (cf (pf8)))
304*2d543d20SAndroid Build Coastguard Worker
305*2d543d20SAndroid Build Coastguard Worker; Test 81
306*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (cg (pg1)))
307*2d543d20SAndroid Build Coastguard Worker(deny a_s2 a_t2 (cg (pg1)))
308*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 a_t2 (cg (pg1)))
309*2d543d20SAndroid Build Coastguard Worker; Below should fail
310*2d543d20SAndroid Build Coastguard Worker(typeattribute a81a)
311*2d543d20SAndroid Build Coastguard Worker(typeattributeset a81a (and a_s4 (not a_t2)))
312*2d543d20SAndroid Build Coastguard Worker(typeattribute a81b)
313*2d543d20SAndroid Build Coastguard Worker(typeattributeset a81b (and a_s4 a_t2))
314*2d543d20SAndroid Build Coastguard Worker(typeattribute a81c)
315*2d543d20SAndroid Build Coastguard Worker(typeattributeset a81c (and a_s1 (not a_t2)))
316*2d543d20SAndroid Build Coastguard Worker(typeattribute a81d)
317*2d543d20SAndroid Build Coastguard Worker(typeattributeset a81d (and a_s3 (not a_t2)))
318*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 other (cg (pg1))) ; This check should fail
319*2d543d20SAndroid Build Coastguard Worker; (neverallow a81a other (cg (pg1))) ; This check should fail
320*2d543d20SAndroid Build Coastguard Worker; (neverallow a81a a81d (cg (pg1)))  ; This check should fail
321*2d543d20SAndroid Build Coastguard Worker; (neverallow a81b a81c (cg (pg1)))  ; This check should fail
322*2d543d20SAndroid Build Coastguard Worker
323*2d543d20SAndroid Build Coastguard Worker; Test 82
324*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (cg (pg2)))
325*2d543d20SAndroid Build Coastguard Worker(deny tg a_t2 (cg (pg2)))
326*2d543d20SAndroid Build Coastguard Worker(neverallow tg a_t2 (cg (pg2)))
327*2d543d20SAndroid Build Coastguard Worker
328*2d543d20SAndroid Build Coastguard Worker; Test 83
329*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (cg (pg3)))
330*2d543d20SAndroid Build Coastguard Worker(deny tm a_t2 (cg (pg3)))
331*2d543d20SAndroid Build Coastguard Worker(neverallow tm a_t2 (cg (pg3)))
332*2d543d20SAndroid Build Coastguard Worker
333*2d543d20SAndroid Build Coastguard Worker; Test 84
334*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (cg (pg4)))
335*2d543d20SAndroid Build Coastguard Worker(deny a_s2 tg (cg (pg4)))
336*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 tg (cg (pg4)))
337*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 other (cg (pg4))) ; This check should fail
338*2d543d20SAndroid Build Coastguard Worker
339*2d543d20SAndroid Build Coastguard Worker; Test 85
340*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (cg (pg5)))
341*2d543d20SAndroid Build Coastguard Worker(deny a_s2 ty (cg (pg5)))
342*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 ty (cg (pg5)))
343*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 other (cg (pg5))) ; This check should fail
344*2d543d20SAndroid Build Coastguard Worker
345*2d543d20SAndroid Build Coastguard Worker; Test 86
346*2d543d20SAndroid Build Coastguard Worker(typeattribute a86)
347*2d543d20SAndroid Build Coastguard Worker(typeattributeset a86 (tg tm ts))
348*2d543d20SAndroid Build Coastguard Worker(allow a86 other (cg (pg6)))
349*2d543d20SAndroid Build Coastguard Worker(deny a_s2 a_t2 (cg (pg6)))
350*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 a_t2 (cg (pg6)))
351*2d543d20SAndroid Build Coastguard Worker
352*2d543d20SAndroid Build Coastguard Worker; Test 91
353*2d543d20SAndroid Build Coastguard Worker(allow a_s1 a_t1 (ch (ph1)))
354*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ch (ph1)))
355*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ch (ph1)))
356*2d543d20SAndroid Build Coastguard Worker; Below should fail
357*2d543d20SAndroid Build Coastguard Worker(typeattribute a91a)
358*2d543d20SAndroid Build Coastguard Worker(typeattributeset a91a (and a_s4 a_t1))
359*2d543d20SAndroid Build Coastguard Worker(typeattribute a91b)
360*2d543d20SAndroid Build Coastguard Worker(typeattributeset a91b (and a_t1 a_s2))
361*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 a_t1 (ch (ph1))) ; This check should fail
362*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s4 a91b (ch (ph1))) ; This check should fail
363*2d543d20SAndroid Build Coastguard Worker; (neverallow a91a self (ch (ph1))) ; This check should fail
364*2d543d20SAndroid Build Coastguard Worker
365*2d543d20SAndroid Build Coastguard Worker; Test 92
366*2d543d20SAndroid Build Coastguard Worker(allow tc a_t1 (ch (ph2)))
367*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ch (ph2)))
368*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ch (ph2)))
369*2d543d20SAndroid Build Coastguard Worker
370*2d543d20SAndroid Build Coastguard Worker; Test 93
371*2d543d20SAndroid Build Coastguard Worker(allow tm a_t1 (ch (ph3)))
372*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ch (ph3)))
373*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ch (ph3)))
374*2d543d20SAndroid Build Coastguard Worker
375*2d543d20SAndroid Build Coastguard Worker; Test 94
376*2d543d20SAndroid Build Coastguard Worker(allow a_s1 tc (ch (ph4)))
377*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ch (ph4)))
378*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ch (ph4)))
379*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 tc (ch (ph4))) ; This check should fail
380*2d543d20SAndroid Build Coastguard Worker
381*2d543d20SAndroid Build Coastguard Worker; Test 95
382*2d543d20SAndroid Build Coastguard Worker(allow a_s1 tu (ch (ph5)))
383*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ch (ph5)))
384*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ch (ph5)))
385*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 tu (ch (ph5))) ; This check should fail
386*2d543d20SAndroid Build Coastguard Worker
387*2d543d20SAndroid Build Coastguard Worker; Test 96
388*2d543d20SAndroid Build Coastguard Worker(typeattribute a96)
389*2d543d20SAndroid Build Coastguard Worker(typeattributeset a96 (tc tm tw))
390*2d543d20SAndroid Build Coastguard Worker(allow a_s1 a_t1 (ch (ph6)))
391*2d543d20SAndroid Build Coastguard Worker(deny a96 other (ch (ph6)))
392*2d543d20SAndroid Build Coastguard Worker(neverallow a96 other (ch (ph6)))
393*2d543d20SAndroid Build Coastguard Worker
394*2d543d20SAndroid Build Coastguard Worker; Test 101
395*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (ci (pi1)))
396*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ci (pi1)))
397*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ci (pi1)))
398*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 other (ci (pi1))) ; This check should fail
399*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s4 a_s3 (ci (pi1)))  ; This check should fail
400*2d543d20SAndroid Build Coastguard Worker
401*2d543d20SAndroid Build Coastguard Worker; Test 102
402*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ci (pi2)))
403*2d543d20SAndroid Build Coastguard Worker(deny a_s2 other (ci (pi2)))
404*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 other (ci (pi2)))
405*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 notself (ci (pi2))) ; This check should fail
406*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s4 a_s3 (ci (pi2)))    ; This check should fail
407*2d543d20SAndroid Build Coastguard Worker
408*2d543d20SAndroid Build Coastguard Worker; Test 103
409*2d543d20SAndroid Build Coastguard Worker(allow a_s1 other (ci (pi3)))
410*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (ci (pi3)))
411*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (ci (pi3)))
412*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 other (ci (pi3))) ; This check should fail
413*2d543d20SAndroid Build Coastguard Worker
414*2d543d20SAndroid Build Coastguard Worker; Test 104
415*2d543d20SAndroid Build Coastguard Worker(allow a_s1 notself (ci (pi4)))
416*2d543d20SAndroid Build Coastguard Worker(deny a_s2 notself (ci (pi4)))
417*2d543d20SAndroid Build Coastguard Worker(neverallow a_s2 notself (ci (pi4)))
418*2d543d20SAndroid Build Coastguard Worker; (neverallow a_s3 notself (ci (pi4))) ; This check should fail
419