xref: /aosp_15_r20/external/selinux/libsepol/cil/src/cil_deny.h (revision 2d543d20722ada2425b5bdab9d0d1d29470e7bba)
1 /*
2  * This file is public domain software, i.e. not copyrighted.
3  *
4  * Warranty Exclusion
5  * ------------------
6  * You agree that this software is a non-commercially developed program
7  * that may contain "bugs" (as that term is used in the industry) and
8  * that it may not function as intended. The software is licensed
9  * "as is". NSA makes no, and hereby expressly disclaims all, warranties,
10  * express, implied, statutory, or otherwise with respect to the software,
11  * including noninfringement and the implied warranties of merchantability
12  * and fitness for a particular purpose.
13  *
14  * Limitation of Liability
15  *-----------------------
16  * In no event will NSA be liable for any damages, including loss of data,
17  * lost profits, cost of cover, or other special, incidental, consequential,
18  * direct or indirect damages arising from the software or the use thereof,
19  * however caused and on any theory of liability. This limitation will apply
20  * even if NSA has been advised of the possibility of such damage. You
21  * acknowledge that this is a reasonable allocation of risk.
22  *
23  * Original author: James Carter
24  */
25 
26 #ifndef CIL_DENY_H_
27 #define CIL_DENY_H_
28 
29 int cil_classperms_list_match_any(const struct cil_list *cpl1, const struct cil_list *cpl2);
30 int cil_classperms_list_match_all(const struct cil_list *cpl1, const struct cil_list *cpl2);
31 void cil_classperms_list_copy(struct cil_list **new, const struct cil_list *old);
32 void cil_classperms_list_and(struct cil_list **result, const struct cil_list *cpl1, const struct cil_list *cpl2);
33 void cil_classperms_list_andnot(struct cil_list **result, const struct cil_list *cpl1, const struct cil_list *cpl2);
34 int cil_process_deny_rules_in_ast(struct cil_db *db);
35 
36 #endif /* CIL_DENY_H_ */
37