Lines Matching defs:rule
317 struct cil_avrule *rule = current->data;
328 rc = cil_resolve_name(current, rule->src_str, CIL_SYM_TYPES, args, &src_datum);
332 rule->src = src_datum;
334 if (rule->tgt_str == CIL_KEY_SELF) {
335 rule->tgt = db->selftype;
337 rc = cil_resolve_name(current, rule->tgt_str, CIL_SYM_TYPES, args, &tgt_datum);
341 rule->tgt = tgt_datum;
342 used = (rule->rule_kind == CIL_AVRULE_NEVERALLOW) ?
348 if (!rule->is_extended) {
349 rc = cil_resolve_classperms_list(current, rule->perms.classperms, extra_args);
354 if (rule->perms.x.permx_str != NULL) {
355 rc = cil_resolve_name(current, rule->perms.x.permx_str, CIL_SYM_PERMX, args, &permx_datum);
359 rule->perms.x.permx = (struct cil_permissionx*)permx_datum;
361 rc = cil_resolve_permissionx(current, rule->perms.x.permx, extra_args);
377 struct cil_type_rule *rule = current->data;
385 rc = cil_resolve_name(current, rule->src_str, CIL_SYM_TYPES, extra_args, &src_datum);
389 rule->src = src_datum;
391 if (rule->tgt_str == CIL_KEY_SELF) {
392 rule->tgt = args->db->selftype;
394 rc = cil_resolve_name(current, rule->tgt_str, CIL_SYM_TYPES, extra_args, &tgt_datum);
398 rule->tgt = tgt_datum;
401 rc = cil_resolve_name(current, rule->obj_str, CIL_SYM_CLASSES, extra_args, &obj_datum);
405 rule->obj = (struct cil_class*)obj_datum;
407 rc = cil_resolve_name(current, rule->result_str, CIL_SYM_TYPES, extra_args, &result_datum);
415 cil_log(CIL_ERR, "Type rule result must be a type [%d]\n",result_node->flavor);
419 rule->result = result_datum;
3962 struct cil_avrule *rule = node->data;
3963 if (rule->rule_kind == CIL_AVRULE_NEVERALLOW) {