16cd6a6acSopenharmony_ciCIL (Common Intermediate Language)
26cd6a6acSopenharmony_ci===============
36cd6a6acSopenharmony_ci## Table of Contents
46cd6a6acSopenharmony_ci
56cd6a6acSopenharmony_ci* [Introduction](cil_introduction.md#Introduction)
66cd6a6acSopenharmony_ci  * [Design Philosophy](cil_introduction.md#design-philosophy)
76cd6a6acSopenharmony_ci  * [Goals and Primary Features](cil_introduction.md#goals-and-primary-features)
86cd6a6acSopenharmony_ci  * [Design Overview](cil_introduction.md#design-overview)
96cd6a6acSopenharmony_ci
106cd6a6acSopenharmony_ci* [CIL Information](cil_reference_guide.md#cil-information)
116cd6a6acSopenharmony_ci  * [Declarations](cil_reference_guide.md#declarations)
126cd6a6acSopenharmony_ci  * [Definitions](cil_reference_guide.md#definitions)
136cd6a6acSopenharmony_ci  * [Symbol Character Set](cil_reference_guide.md#symbol-character-set)
146cd6a6acSopenharmony_ci  * [String Character Set](cil_reference_guide.md#string-character-set)
156cd6a6acSopenharmony_ci  * [Comments](cil_reference_guide.md#comments)
166cd6a6acSopenharmony_ci  * [Namespaces](cil_reference_guide.md#namespaces)
176cd6a6acSopenharmony_ci  * [Global Namespace](cil_reference_guide.md#global-namespace)
186cd6a6acSopenharmony_ci  * [Expressions](cil_reference_guide.md#expressions)
196cd6a6acSopenharmony_ci  * [Name String](cil_reference_guide.md#name-string)
206cd6a6acSopenharmony_ci  * [self](cil_reference_guide.md#self)
216cd6a6acSopenharmony_ci  * [Example CIL Policy](../test/policy.cil)
226cd6a6acSopenharmony_ci
236cd6a6acSopenharmony_ci* [Access Vector Rules](cil_access_vector_rules.md#access-vector-rules)
246cd6a6acSopenharmony_ci  * [allow](cil_access_vector_rules.md#allow)
256cd6a6acSopenharmony_ci  * [auditallow](cil_access_vector_rules.md#auditallow)
266cd6a6acSopenharmony_ci  * [dontaudit](cil_access_vector_rules.md#dontaudit)
276cd6a6acSopenharmony_ci  * [neverallow](cil_access_vector_rules.md#neverallow)
286cd6a6acSopenharmony_ci  * [allowx](cil_access_vector_rules.md#allowx)
296cd6a6acSopenharmony_ci  * [auditallowx](cil_access_vector_rules.md#auditallowx)
306cd6a6acSopenharmony_ci  * [dontauditx](cil_access_vector_rules.md#dontauditx)
316cd6a6acSopenharmony_ci  * [neverallowx](cil_access_vector_rules.md#neverallowx)
326cd6a6acSopenharmony_ci
336cd6a6acSopenharmony_ci* [Call / Macro Statements](cil_call_macro_statements.md#call--macro-statements)
346cd6a6acSopenharmony_ci  * [call](cil_call_macro_statements.md#call)
356cd6a6acSopenharmony_ci  * [macro](cil_call_macro_statements.md#macro)
366cd6a6acSopenharmony_ci
376cd6a6acSopenharmony_ci* [Class and Permission Statements](cil_class_and_permission_statements.md#class-and-permission-statements)
386cd6a6acSopenharmony_ci  * [common](cil_class_and_permission_statements.md#common)
396cd6a6acSopenharmony_ci  * [classcommon](cil_class_and_permission_statements.md#classcommon)
406cd6a6acSopenharmony_ci  * [class](cil_class_and_permission_statements.md#class)
416cd6a6acSopenharmony_ci  * [classorder](cil_class_and_permission_statements.md#classorder)
426cd6a6acSopenharmony_ci  * [classpermission](cil_class_and_permission_statements.md#classpermission)
436cd6a6acSopenharmony_ci  * [classpermissionset](cil_class_and_permission_statements.md#classpermissionset)
446cd6a6acSopenharmony_ci  * [classmap](cil_class_and_permission_statements.md#classmap)
456cd6a6acSopenharmony_ci  * [classmapping](cil_class_and_permission_statements.md#classmapping)
466cd6a6acSopenharmony_ci  * [permissionx](cil_class_and_permission_statements.md#permissionx)
476cd6a6acSopenharmony_ci
486cd6a6acSopenharmony_ci* [Conditional Statements](cil_conditional_statements.md#conditional-statements)
496cd6a6acSopenharmony_ci  * [boolean](cil_conditional_statements.md#boolean)
506cd6a6acSopenharmony_ci  * [booleanif](cil_conditional_statements.md#booleanif)
516cd6a6acSopenharmony_ci  * [tunable](cil_conditional_statements.md#tunable)
526cd6a6acSopenharmony_ci  * [tunableif](cil_conditional_statements.md#tunableif)
536cd6a6acSopenharmony_ci
546cd6a6acSopenharmony_ci* [Constraint Statements](cil_constraint_statements.md#constraint-statements)
556cd6a6acSopenharmony_ci  * [constrain](cil_constraint_statements.md#constrain)
566cd6a6acSopenharmony_ci  * [validatetrans](cil_constraint_statements.md#validatetrans)
576cd6a6acSopenharmony_ci  * [mlsconstrain](cil_constraint_statements.md#mlsconstrain)
586cd6a6acSopenharmony_ci  * [mlsvalidatetrans](cil_constraint_statements.md#mlsvalidatetrans)
596cd6a6acSopenharmony_ci
606cd6a6acSopenharmony_ci* [Container Statements](cil_container_statements.md#container-statements)
616cd6a6acSopenharmony_ci  * [block](cil_container_statements.md#block)
626cd6a6acSopenharmony_ci  * [blockabstract](cil_container_statements.md#blockabstract)
636cd6a6acSopenharmony_ci  * [blockinherit](cil_container_statements.md#blockinherit)
646cd6a6acSopenharmony_ci  * [optional](cil_container_statements.md#optional)
656cd6a6acSopenharmony_ci  * [in](cil_container_statements.md#in)
666cd6a6acSopenharmony_ci
676cd6a6acSopenharmony_ci* [Context Statement](cil_context_statement.md#context-statement)
686cd6a6acSopenharmony_ci  * [context](cil_context_statement.md#context)
696cd6a6acSopenharmony_ci
706cd6a6acSopenharmony_ci* [Default Object Statements](cil_default_object_statements.md#default-object-statements)
716cd6a6acSopenharmony_ci  * [defaultuser](cil_default_object_statements.md#defaultuser)
726cd6a6acSopenharmony_ci  * [defaultrole](cil_default_object_statements.md#defaultrole)
736cd6a6acSopenharmony_ci  * [defaulttype](cil_default_object_statements.md#defaulttype)
746cd6a6acSopenharmony_ci  * [defaultrange](cil_default_object_statements.md#defaultrange)
756cd6a6acSopenharmony_ci
766cd6a6acSopenharmony_ci* [File Labeling Statements](cil_file_labeling_statements.md#file-labeling-statements)
776cd6a6acSopenharmony_ci  * [filecon](cil_file_labeling_statements.md#filecon)
786cd6a6acSopenharmony_ci  * [fsuse](cil_file_labeling_statements.md#fsuse)
796cd6a6acSopenharmony_ci  * [genfscon](cil_file_labeling_statements.md#genfscon)
806cd6a6acSopenharmony_ci
816cd6a6acSopenharmony_ci* [Multi-Level Security Labeling Statements](cil_mls_labeling_statements.md#multi-level-security-labeling-statements)
826cd6a6acSopenharmony_ci  * [sensitivity](cil_mls_labeling_statements.md#sensitivity)
836cd6a6acSopenharmony_ci  * [sensitivityalias](cil_mls_labeling_statements.md#sensitivityalias)
846cd6a6acSopenharmony_ci  * [sensitivityaliasactual](cil_mls_labeling_statements.md#sensitivityaliasactual)
856cd6a6acSopenharmony_ci  * [sensitivityorder](cil_mls_labeling_statements.md#sensitivityorder)
866cd6a6acSopenharmony_ci  * [category](cil_mls_labeling_statements.md#category)
876cd6a6acSopenharmony_ci  * [categoryalias](cil_mls_labeling_statements.md#categoryalias)
886cd6a6acSopenharmony_ci  * [categoryaliasactual](cil_mls_labeling_statements.md#categoryaliasactual)
896cd6a6acSopenharmony_ci  * [categoryorder](cil_mls_labeling_statements.md#categoryorder)
906cd6a6acSopenharmony_ci  * [categoryset](cil_mls_labeling_statements.md#categoryset)
916cd6a6acSopenharmony_ci  * [sensitivitycategory](cil_mls_labeling_statements.md#sensitivitycategory)
926cd6a6acSopenharmony_ci  * [level](cil_mls_labeling_statements.md#level)
936cd6a6acSopenharmony_ci  * [levelrange](cil_mls_labeling_statements.md#levelrange)
946cd6a6acSopenharmony_ci  * [rangetransition](cil_mls_labeling_statements.md#rangetransition)
956cd6a6acSopenharmony_ci  * [mlsconstrain](cil_mls_labeling_statements.md#mlsconstrain)
966cd6a6acSopenharmony_ci  * [mlsvalidatetrans](cil_mls_labeling_statements.md#mlsvalidatetrans)
976cd6a6acSopenharmony_ci
986cd6a6acSopenharmony_ci* [Network Labeling Statements](cil_network_labeling_statements.md#network-labeling-statements)
996cd6a6acSopenharmony_ci  * [ipaddr](cil_network_labeling_statements.md#ipaddr)
1006cd6a6acSopenharmony_ci  * [netifcon](cil_network_labeling_statements.md#netifcon)
1016cd6a6acSopenharmony_ci  * [nodecon](cil_network_labeling_statements.md#nodecon)
1026cd6a6acSopenharmony_ci  * [portcon](cil_network_labeling_statements.md#portcon)
1036cd6a6acSopenharmony_ci
1046cd6a6acSopenharmony_ci* [Policy Configuration Statements](cil_policy_config_statements.md#policy-configuration-statements)
1056cd6a6acSopenharmony_ci  * [mls](cil_policy_config_statements.md#mls)
1066cd6a6acSopenharmony_ci  * [handleunknown](cil_policy_config_statements.md#handleunknown)
1076cd6a6acSopenharmony_ci  * [policycap](cil_policy_config_statements.md#policycap)
1086cd6a6acSopenharmony_ci
1096cd6a6acSopenharmony_ci* [Role Statements](cil_role_statements.md#role-statements)
1106cd6a6acSopenharmony_ci  * [role](cil_role_statements.md#role)
1116cd6a6acSopenharmony_ci  * [roletype](cil_role_statements.md#roletype)
1126cd6a6acSopenharmony_ci  * [roleattribute](cil_role_statements.md#roleattribute)
1136cd6a6acSopenharmony_ci  * [roleattributeset](cil_role_statements.md#roleattributeset)
1146cd6a6acSopenharmony_ci  * [roleallow](cil_role_statements.md#roleallow)
1156cd6a6acSopenharmony_ci  * [roletransition](cil_role_statements.md#roletransition)
1166cd6a6acSopenharmony_ci  * [rolebounds](cil_role_statements.md#rolebounds)
1176cd6a6acSopenharmony_ci
1186cd6a6acSopenharmony_ci* [SID Statements](cil_sid_statements.md#sid-statements)
1196cd6a6acSopenharmony_ci  * [sid](cil_sid_statements.md#sid)
1206cd6a6acSopenharmony_ci  * [sidorder](cil_sid_statements.md#sidorder)
1216cd6a6acSopenharmony_ci  * [sidcontext](cil_sid_statements.md#sidcontext)
1226cd6a6acSopenharmony_ci
1236cd6a6acSopenharmony_ci* [Type Statements](cil_type_statements.md#type-statements)
1246cd6a6acSopenharmony_ci  * [type](cil_type_statements.md#type)
1256cd6a6acSopenharmony_ci  * [typealias](cil_type_statements.md#typealias)
1266cd6a6acSopenharmony_ci  * [typealiasactual](cil_type_statements.md#typealiasactual)
1276cd6a6acSopenharmony_ci  * [typeattribute](cil_type_statements.md#typeattribute)
1286cd6a6acSopenharmony_ci  * [typeattributeset](cil_type_statements.md#typeattributeset)
1296cd6a6acSopenharmony_ci  * [expandtypeattribute](cil_type_statements.md#expandtypeattribute)
1306cd6a6acSopenharmony_ci  * [typebounds](cil_type_statements.md#typebounds)
1316cd6a6acSopenharmony_ci  * [typechange](cil_type_statements.md#typechange)
1326cd6a6acSopenharmony_ci  * [typemember](cil_type_statements.md#typemember)
1336cd6a6acSopenharmony_ci  * [typetransition](cil_type_statements.md#typetransition)
1346cd6a6acSopenharmony_ci  * [typepermissive](cil_type_statements.md#typepermissive)
1356cd6a6acSopenharmony_ci
1366cd6a6acSopenharmony_ci* [User Statements](cil_user_statements.md#user-statements)
1376cd6a6acSopenharmony_ci  * [user](cil_user_statements.md#user)
1386cd6a6acSopenharmony_ci  * [userrole](cil_user_statements.md#userrole)
1396cd6a6acSopenharmony_ci  * [userattribute](cil_user_statements.md#userattribute)
1406cd6a6acSopenharmony_ci  * [userattributeset](cil_user_statements.md#userattributeset)
1416cd6a6acSopenharmony_ci  * [userlevel](cil_user_statements.md#userlevel)
1426cd6a6acSopenharmony_ci  * [userrange](cil_user_statements.md#userrange)
1436cd6a6acSopenharmony_ci  * [userbounds](cil_user_statements.md#userbounds)
1446cd6a6acSopenharmony_ci  * [userprefix](cil_user_statements.md#userprefix)
1456cd6a6acSopenharmony_ci  * [selinuxuser](cil_user_statements.md#selinuxuser)
1466cd6a6acSopenharmony_ci  * [selinuxuserdefault](cil_user_statements.md#selinuxuserdefault)
1476cd6a6acSopenharmony_ci
1486cd6a6acSopenharmony_ci* [Infiniband Statements](cil_infiniband_statements.md#infiniband-statements)
1496cd6a6acSopenharmony_ci  * [ibpkeycon](cil_infiniband_statements.md#ibpkeycon)
1506cd6a6acSopenharmony_ci  * [ibendportcon](cil_infiniband_statements.md#ibendportcon)
1516cd6a6acSopenharmony_ci
1526cd6a6acSopenharmony_ci* [Xen Statements](cil_xen_statements.md#xen-statements)
1536cd6a6acSopenharmony_ci  * [iomemcon](cil_xen_statements.md#iomemcon)
1546cd6a6acSopenharmony_ci  * [ioportcon](cil_xen_statements.md#ioportcon)
1556cd6a6acSopenharmony_ci  * [pcidevicecon](cil_xen_statements.md#pcidevicecon)
1566cd6a6acSopenharmony_ci  * [pirqcon](cil_xen_statements.md#pirqcon)
1576cd6a6acSopenharmony_ci  * [devicetreecon](cil_xen_statements.md#devicetreecon)
1586cd6a6acSopenharmony_ci
1596cd6a6acSopenharmony_ci* [Example Policy](../test/policy.cil#example-policy)
160