Lines Matching defs:sepol_class

112 static int __cil_get_sepol_class_datum(policydb_t *pdb, struct cil_symtab_datum *datum, class_datum_t **sepol_class)
114 *sepol_class = hashtab_search(pdb->p_classes.table, datum->fqn);
115 if (*sepol_class == NULL) {
299 class_datum_t *sepol_class = cil_malloc(sizeof(*sepol_class));
300 memset(sepol_class, 0, sizeof(class_datum_t));
303 rc = symtab_insert(pdb, SYM_CLASSES, key, sepol_class, SCOPE_DECL, 0, &value);
305 free(sepol_class);
309 sepol_class->s.value = value;
313 rc = symtab_init(&sepol_class->permissions, PERM_SYMTAB_SIZE);
330 sepol_class->comdatum = sepol_common;
331 sepol_class->comkey = cil_strdup(key);
332 sepol_class->permissions.nprim += sepol_common->permissions.nprim;
346 rc = hashtab_insert(sepol_class->permissions.table, key, sepol_perm);
352 sepol_perm->s.value = sepol_class->permissions.nprim + 1;
353 sepol_class->permissions.nprim++;
1294 static int __perm_str_to_datum(char *perm_str, class_datum_t *sepol_class, uint32_t *datum)
1300 sepol_perm = hashtab_search(sepol_class->permissions.table, perm_str);
1302 sepol_common = sepol_class->comdatum;
1318 static int __cil_perms_to_datum(struct cil_list *perms, class_datum_t *sepol_class, uint32_t *datum)
1330 rc = __perm_str_to_datum(key, sepol_class, &data);
1396 class_datum_t *sepol_class = NULL;
1399 rc = __cil_get_sepol_class_datum(pdb, DATUM(cp->class), &sepol_class);
1402 rc = __cil_perms_to_datum(cp->perms, sepol_class, &data);
1420 rc = __cil_insert_avrule(pdb, kind, sepol_src->s.value, sepol_tgt->s.value, sepol_class->s.value, data, cond_node, cond_flavor);
2895 class_datum_t *sepol_class = NULL;
2900 rc = __cil_get_sepol_class_datum(pdb, class, &sepol_class);
2903 rc = __cil_perms_to_datum(perms, sepol_class, &sepol_constrain->permissions);
2925 sepol_constrain->next = sepol_class->constraints;
2926 sepol_class->constraints = sepol_constrain;
2994 class_datum_t *sepol_class = NULL;
3003 rc = __cil_get_sepol_class_datum(pdb, DATUM(c->data), &sepol_class);
3016 sepol_validatetrans->next = sepol_class->validatetrans;
3017 sepol_class->validatetrans = sepol_validatetrans;
3253 class_datum_t *sepol_class = NULL;
3280 rc = __cil_get_sepol_class_datum(pdb, DATUM(c->data), &sepol_class);
3287 newkey->target_class = sepol_class->s.value;
3736 class_datum_t *sepol_class;
3745 int rc = __cil_get_sepol_class_datum(pdb, DATUM(c->data), &sepol_class);
3750 if (!sepol_class->default_user) {
3751 sepol_class->default_user = def->object;
3752 } else if (sepol_class->default_user != (char)def->object) {
3758 if (!sepol_class->default_role) {
3759 sepol_class->default_role = def->object;
3760 } else if (sepol_class->default_role != (char)def->object) {
3766 if (!sepol_class->default_type) {
3767 sepol_class->default_type = def->object;
3768 } else if (sepol_class->default_type != (char)def->object) {
3791 class_datum_t *sepol_class;
3800 int rc = __cil_get_sepol_class_datum(pdb, DATUM(c->data), &sepol_class);
3803 if (!sepol_class->default_range) {
3804 sepol_class->default_range = def->object_range;
3805 } else if (sepol_class->default_range != (char)def->object_range) {
4492 class_datum_t *sepol_class = NULL;
4495 rc = __cil_get_sepol_class_datum(pdb, DATUM(cp->class), &sepol_class);
4498 rc = __cil_perms_to_datum(cp->perms, sepol_class, &data);
4502 cpn->tclass = sepol_class->s.value;
4897 class_datum_t *sepol_class = pdb->class_val_to_struct[class - 1];
4906 for (i = 0; i < sepol_class->permissions.nprim; i++) {