1*2d543d20SAndroid Build Coastguard Worker /* Functions used to define policy grammar components. */ 2*2d543d20SAndroid Build Coastguard Worker 3*2d543d20SAndroid Build Coastguard Worker #ifndef _POLICY_DEFINE_H_ 4*2d543d20SAndroid Build Coastguard Worker #define _POLICY_DEFINE_H_ 5*2d543d20SAndroid Build Coastguard Worker 6*2d543d20SAndroid Build Coastguard Worker /* 7*2d543d20SAndroid Build Coastguard Worker * We need the following so we have a valid error return code in yacc 8*2d543d20SAndroid Build Coastguard Worker * when we have a parse error for a conditional rule. We can't check 9*2d543d20SAndroid Build Coastguard Worker * for NULL (ie 0) because that is a potentially valid return. 10*2d543d20SAndroid Build Coastguard Worker */ 11*2d543d20SAndroid Build Coastguard Worker #define COND_ERR ((avrule_t *)-1) 12*2d543d20SAndroid Build Coastguard Worker #define TRUE 1 13*2d543d20SAndroid Build Coastguard Worker #define FALSE 0 14*2d543d20SAndroid Build Coastguard Worker 15*2d543d20SAndroid Build Coastguard Worker avrule_t *define_cond_compute_type(int which); 16*2d543d20SAndroid Build Coastguard Worker avrule_t *define_cond_pol_list(avrule_t *avlist, avrule_t *sl); 17*2d543d20SAndroid Build Coastguard Worker avrule_t *define_cond_te_avtab(int which); 18*2d543d20SAndroid Build Coastguard Worker avrule_t *define_cond_filename_trans(void); 19*2d543d20SAndroid Build Coastguard Worker cond_expr_t *define_cond_expr(uint32_t expr_type, void *arg1, void* arg2); 20*2d543d20SAndroid Build Coastguard Worker int define_attrib(void); 21*2d543d20SAndroid Build Coastguard Worker int define_attrib_role(void); 22*2d543d20SAndroid Build Coastguard Worker int define_av_perms(int inherits); 23*2d543d20SAndroid Build Coastguard Worker int define_bool_tunable(int is_tunable); 24*2d543d20SAndroid Build Coastguard Worker int define_category(void); 25*2d543d20SAndroid Build Coastguard Worker int define_class(void); 26*2d543d20SAndroid Build Coastguard Worker int define_default_user(int which); 27*2d543d20SAndroid Build Coastguard Worker int define_default_role(int which); 28*2d543d20SAndroid Build Coastguard Worker int define_default_type(int which); 29*2d543d20SAndroid Build Coastguard Worker int define_default_range(int which); 30*2d543d20SAndroid Build Coastguard Worker int define_common_perms(void); 31*2d543d20SAndroid Build Coastguard Worker int define_compute_type(int which); 32*2d543d20SAndroid Build Coastguard Worker int define_conditional(cond_expr_t *expr, avrule_t *t_list, avrule_t *f_list ); 33*2d543d20SAndroid Build Coastguard Worker int define_constraint(constraint_expr_t *expr); 34*2d543d20SAndroid Build Coastguard Worker int define_dominance(void); 35*2d543d20SAndroid Build Coastguard Worker int define_fs_context(unsigned int major, unsigned int minor); 36*2d543d20SAndroid Build Coastguard Worker int define_fs_use(int behavior); 37*2d543d20SAndroid Build Coastguard Worker int define_genfs_context(int has_type); 38*2d543d20SAndroid Build Coastguard Worker int define_initial_sid_context(void); 39*2d543d20SAndroid Build Coastguard Worker int define_initial_sid(void); 40*2d543d20SAndroid Build Coastguard Worker int define_ipv4_node_context(void); 41*2d543d20SAndroid Build Coastguard Worker int define_ipv4_cidr_node_context(void); 42*2d543d20SAndroid Build Coastguard Worker int define_ipv6_node_context(void); 43*2d543d20SAndroid Build Coastguard Worker int define_ipv6_cidr_node_context(void); 44*2d543d20SAndroid Build Coastguard Worker int define_level(void); 45*2d543d20SAndroid Build Coastguard Worker int define_netif_context(void); 46*2d543d20SAndroid Build Coastguard Worker int define_permissive(void); 47*2d543d20SAndroid Build Coastguard Worker int define_polcap(void); 48*2d543d20SAndroid Build Coastguard Worker int define_ibpkey_context(unsigned int low, unsigned int high); 49*2d543d20SAndroid Build Coastguard Worker int define_ibendport_context(unsigned int port); 50*2d543d20SAndroid Build Coastguard Worker int define_port_context(unsigned int low, unsigned int high); 51*2d543d20SAndroid Build Coastguard Worker int define_pirq_context(unsigned int pirq); 52*2d543d20SAndroid Build Coastguard Worker int define_iomem_context(uint64_t low, uint64_t high); 53*2d543d20SAndroid Build Coastguard Worker int define_ioport_context(unsigned long low, unsigned long high); 54*2d543d20SAndroid Build Coastguard Worker int define_pcidevice_context(unsigned long device); 55*2d543d20SAndroid Build Coastguard Worker int define_devicetree_context(void); 56*2d543d20SAndroid Build Coastguard Worker int define_range_trans(int class_specified); 57*2d543d20SAndroid Build Coastguard Worker int define_role_allow(void); 58*2d543d20SAndroid Build Coastguard Worker int define_role_trans(int class_specified); 59*2d543d20SAndroid Build Coastguard Worker int define_role_types(void); 60*2d543d20SAndroid Build Coastguard Worker int define_role_attr(void); 61*2d543d20SAndroid Build Coastguard Worker int define_roleattribute(void); 62*2d543d20SAndroid Build Coastguard Worker int define_filename_trans(void); 63*2d543d20SAndroid Build Coastguard Worker int define_sens(void); 64*2d543d20SAndroid Build Coastguard Worker int define_te_avtab(int which); 65*2d543d20SAndroid Build Coastguard Worker int define_te_avtab_extended_perms(int which); 66*2d543d20SAndroid Build Coastguard Worker int define_typealias(void); 67*2d543d20SAndroid Build Coastguard Worker int define_typeattribute(void); 68*2d543d20SAndroid Build Coastguard Worker int define_typebounds(void); 69*2d543d20SAndroid Build Coastguard Worker int define_type(int alias); 70*2d543d20SAndroid Build Coastguard Worker int define_user(void); 71*2d543d20SAndroid Build Coastguard Worker int define_validatetrans(constraint_expr_t *expr); 72*2d543d20SAndroid Build Coastguard Worker int expand_attrib(void); 73*2d543d20SAndroid Build Coastguard Worker int insert_id(const char *id,int push); 74*2d543d20SAndroid Build Coastguard Worker int insert_separator(int push); 75*2d543d20SAndroid Build Coastguard Worker uintptr_t define_cexpr(uint32_t expr_type, uintptr_t arg1, uintptr_t arg2); 76*2d543d20SAndroid Build Coastguard Worker 77*2d543d20SAndroid Build Coastguard Worker #endif /* _POLICY_DEFINE_H_ */ 78