Lines Matching refs:fp
55 struct policy_file *fp; member
60 avrule_t * avrules, struct policy_file *fp);
62 static int ebitmap_write(ebitmap_t * e, struct policy_file *fp) in ebitmap_write() argument
77 items = put_entry(buf, sizeof(uint32_t), 3, fp); in ebitmap_write()
83 items = put_entry(&bit, sizeof(uint32_t), 1, fp); in ebitmap_write()
87 items = put_entry(&map, sizeof(uint64_t), 1, fp); in ebitmap_write()
107 avtab_ptr_t cur, struct policy_file *fp, in avtab_write_item() argument
161 ERR(fp->handle, "null entry"); in avtab_write_item()
165 ERR(fp->handle, "entry has both access " in avtab_write_item()
191 ERR(fp->handle, "missing node"); in avtab_write_item()
207 ERR(fp->handle, "data count wrong"); in avtab_write_item()
215 items2 = put_entry(buf32, sizeof(uint32_t), items, fp); in avtab_write_item()
228 items = put_entry(buf16, sizeof(uint16_t), 4, fp); in avtab_write_item()
233 ERR(fp->handle, "policy version %u does not support ioctl extended" in avtab_write_item()
240 ERR(fp->handle, "Target platform %s does not support ioctl " in avtab_write_item()
248 items = put_entry(&buf8, sizeof(uint8_t),1,fp); in avtab_write_item()
252 items = put_entry(&buf8, sizeof(uint8_t),1,fp); in avtab_write_item()
257 items = put_entry(buf32, sizeof(uint32_t),8,fp); in avtab_write_item()
262 items = put_entry(buf32, sizeof(uint32_t), 1, fp); in avtab_write_item()
280 static int avtab_write(struct policydb *p, avtab_t * a, struct policy_file *fp) in avtab_write() argument
308 items = put_entry(&nel, sizeof(uint32_t), 1, fp); in avtab_write()
317 if (avtab_write_item(p, cur, fp, 1, !oldvers, &nel)) { in avtab_write()
328 items = put_entry(&nel, sizeof(uint32_t), 1, fp); in avtab_write()
336 if (avtab_write_item(p, cur, fp, 1, 1, NULL)) { in avtab_write()
356 struct policy_file *fp) in mls_write_semantic_level_helper() argument
367 items = put_entry(buf, sizeof(uint32_t), 2, fp); in mls_write_semantic_level_helper()
374 items = put_entry(buf, sizeof(uint32_t), 2, fp); in mls_write_semantic_level_helper()
387 struct policy_file *fp) in mls_write_semantic_range_helper() argument
391 rc = mls_write_semantic_level_helper(&r->level[0], fp); in mls_write_semantic_range_helper()
395 rc = mls_write_semantic_level_helper(&r->level[1], fp); in mls_write_semantic_range_helper()
404 static int mls_write_level(mls_level_t * l, struct policy_file *fp) in mls_write_level() argument
410 items = put_entry(&sens, sizeof(uint32_t), 1, fp); in mls_write_level()
414 if (ebitmap_write(&l->cat, fp)) in mls_write_level()
424 static int mls_write_range_helper(mls_range_t * r, struct policy_file *fp) in mls_write_range_helper() argument
438 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in mls_write_range_helper()
442 if (ebitmap_write(&r->level[0].cat, fp)) in mls_write_range_helper()
445 if (ebitmap_write(&r->level[1].cat, fp)) in mls_write_range_helper()
457 struct policy_file *fp = pd->fp; in sens_write() local
465 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in sens_write()
469 items = put_entry(key, 1, len, fp); in sens_write()
473 if (mls_write_level(levdatum->level, fp)) in sens_write()
485 struct policy_file *fp = pd->fp; in cat_write() local
494 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in cat_write()
498 items = put_entry(key, 1, len, fp); in cat_write()
505 static int role_trans_write(policydb_t *p, struct policy_file *fp) in role_trans_write() argument
521 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_trans_write()
527 WARN(fp->handle, "Discarding role_transition " in role_trans_write()
536 items = put_entry(buf, sizeof(uint32_t), 3, fp); in role_trans_write()
541 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_trans_write()
550 static int role_allow_write(role_allow_t * r, struct policy_file *fp) in role_allow_write() argument
560 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_allow_write()
566 items = put_entry(buf, sizeof(uint32_t), 2, fp); in role_allow_write()
579 void *fp = ptr; in filename_write_helper() local
583 items = put_entry(buf, sizeof(uint32_t), 1, fp); in filename_write_helper()
587 items = put_entry(ft->name, sizeof(char), len, fp); in filename_write_helper()
595 items = put_entry(buf, sizeof(uint32_t), 4, fp); in filename_write_helper()
602 static int filename_trans_write(struct policydb *p, void *fp) in filename_trans_write() argument
613 items = put_entry(buf, sizeof(uint32_t), 1, fp); in filename_trans_write()
617 rc = hashtab_map(p->filename_trans, filename_write_helper, fp); in filename_trans_write()
624 static int role_set_write(role_set_t * x, struct policy_file *fp) in role_set_write() argument
629 if (ebitmap_write(&x->roles, fp)) in role_set_write()
633 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_set_write()
640 static int type_set_write(type_set_t * x, struct policy_file *fp) in type_set_write() argument
645 if (ebitmap_write(&x->types, fp)) in type_set_write()
647 if (ebitmap_write(&x->negset, fp)) in type_set_write()
651 items = put_entry(buf, sizeof(uint32_t), 1, fp); in type_set_write()
664 struct policy_file *fp = pd->fp; in cond_write_bool() local
674 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in cond_write_bool()
677 items = put_entry(key, 1, len, fp); in cond_write_bool()
684 items = put_entry(buf, sizeof(uint32_t), 1, fp); in cond_write_bool()
702 cond_av_list_t * list, struct policy_file *fp) in cond_write_av_list() argument
727 items = put_entry(buf, sizeof(uint32_t), 1, fp); in cond_write_av_list()
738 if (avtab_write_item(p, cur_list->node, fp, 0, 1, NULL)) in cond_write_av_list()
753 cond_node_t * node, struct policy_file *fp) in cond_write_node() argument
760 items = put_entry(buf, sizeof(uint32_t), 1, fp); in cond_write_node()
770 items = put_entry(buf, sizeof(uint32_t), 1, fp); in cond_write_node()
778 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in cond_write_node()
784 if (cond_write_av_list(p, node->true_list, fp) != 0) in cond_write_node()
786 if (cond_write_av_list(p, node->false_list, fp) != 0) in cond_write_node()
789 if (avrule_write_list(p, node->avtrue_list, fp)) in cond_write_node()
791 if (avrule_write_list(p, node->avfalse_list, fp)) in cond_write_node()
798 items = put_entry(buf, sizeof(uint32_t), 1, fp); in cond_write_node()
807 struct policy_file *fp) in cond_write_list() argument
817 items = put_entry(buf, sizeof(uint32_t), 1, fp); in cond_write_list()
822 if (cond_write_node(p, cur, fp) != 0) in cond_write_list()
833 struct policy_file *fp) in context_write() argument
842 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in context_write()
849 if (mls_write_range_helper(&c->range, fp)) in context_write()
867 struct policy_file *fp = pd->fp; in perm_write() local
875 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in perm_write()
879 items = put_entry(key, 1, len, fp); in perm_write()
892 struct policy_file *fp = pd->fp; in common_write() local
902 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in common_write()
906 items = put_entry(key, 1, len, fp); in common_write()
918 struct policy_file *fp) in write_cons_helper() argument
932 items = put_entry(buf, sizeof(uint32_t), 2, fp); in write_cons_helper()
939 items = put_entry(buf, sizeof(uint32_t), 3, fp); in write_cons_helper()
947 if (ebitmap_write(&e->names, fp)) { in write_cons_helper()
951 type_set_write(e->type_names, fp)) || in write_cons_helper()
954 type_set_write(e->type_names, fp))) { in write_cons_helper()
974 struct policy_file *fp = pd->fp; in class_write() local
1000 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in class_write()
1004 items = put_entry(key, 1, len, fp); in class_write()
1009 items = put_entry(cladatum->comkey, 1, len2, fp); in class_write()
1016 if (write_cons_helper(p, cladatum->constraints, 0, fp)) in class_write()
1029 items = put_entry(buf, sizeof(uint32_t), 1, fp); in class_write()
1032 if (write_cons_helper(p, cladatum->validatetrans, 1, fp)) in class_write()
1043 WARN(fp->handle, in class_write()
1050 items = put_entry(buf, sizeof(uint32_t), 3, fp); in class_write()
1060 items = put_entry(buf, sizeof(uint32_t), 1, fp); in class_write()
1074 struct policy_file *fp = pd->fp; in role_write() local
1098 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in role_write()
1102 items = put_entry(key, 1, len, fp); in role_write()
1106 if (ebitmap_write(&role->dominates, fp)) in role_write()
1122 if (ebitmap_write(&empty, fp)) in role_write()
1125 if (ebitmap_write(&role->types.types, fp)) in role_write()
1129 if (type_set_write(&role->types, fp)) in role_write()
1136 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_write()
1140 if (ebitmap_write(&role->roles, fp)) in role_write()
1153 struct policy_file *fp = pd->fp; in type_write() local
1203 WARN(fp->handle, "Warning! Module policy " in type_write()
1209 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in type_write()
1214 if (ebitmap_write(&typdatum->types, fp)) in type_write()
1218 items = put_entry(key, 1, len, fp); in type_write()
1231 struct policy_file *fp = pd->fp; in user_write() local
1242 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in user_write()
1246 items = put_entry(key, 1, len, fp); in user_write()
1251 if (ebitmap_write(&usrdatum->roles.roles, fp)) in user_write()
1254 if (role_set_write(&usrdatum->roles, fp)) in user_write()
1266 if (mls_write_range_helper(&usrdatum->exp_range, fp)) in user_write()
1268 if (mls_write_level(&usrdatum->exp_dfltlevel, fp)) in user_write()
1274 if (mls_write_semantic_range_helper(&usrdatum->range, fp)) in user_write()
1276 if (mls_write_semantic_level_helper(&usrdatum->dfltlevel, fp)) in user_write()
1289 struct policy_file *fp) in ocontext_write_xen() argument
1299 INFO(fp->handle, in ocontext_write_xen()
1307 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_xen()
1316 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_xen()
1319 if (context_write(p, &c->context[0], fp)) in ocontext_write_xen()
1324 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_xen()
1327 if (context_write(p, &c->context[0], fp)) in ocontext_write_xen()
1335 items = put_entry(buf, sizeof(uint32_t), 2, fp); in ocontext_write_xen()
1338 if (context_write(p, &c->context[0], fp)) in ocontext_write_xen()
1348 items = put_entry(b64, sizeof(uint64_t), 2, fp); in ocontext_write_xen()
1353 ERR(fp->handle, "policy version %d" in ocontext_write_xen()
1363 items = put_entry(buf, sizeof(uint32_t), 2, fp); in ocontext_write_xen()
1367 if (context_write(p, &c->context[0], fp)) in ocontext_write_xen()
1372 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_xen()
1375 if (context_write(p, &c->context[0], fp)) in ocontext_write_xen()
1381 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_xen()
1384 items = put_entry(c->u.name, 1, len, fp); in ocontext_write_xen()
1387 if (context_write(p, &c->context[0], fp)) in ocontext_write_xen()
1397 policydb_t *p, struct policy_file *fp) in ocontext_write_selinux() argument
1407 INFO(fp->handle, in ocontext_write_selinux()
1415 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_selinux()
1424 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_selinux()
1427 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1434 items = put_entry(buf, sizeof(uint32_t), 1, fp); in ocontext_write_selinux()
1437 items = put_entry(c->u.name, 1, len, fp); in ocontext_write_selinux()
1440 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1442 if (context_write(p, &c->context[1], fp)) in ocontext_write_selinux()
1453 items = put_entry(buf, sizeof(uint32_t), 4, fp); in ocontext_write_selinux()
1457 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1464 items = put_entry(buf, sizeof(uint32_t), 2, fp); in ocontext_write_selinux()
1467 items = put_entry(c->u.ibendport.dev_name, 1, len, fp); in ocontext_write_selinux()
1471 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1481 items = put_entry(buf, sizeof(uint32_t), 3, fp); in ocontext_write_selinux()
1484 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1490 items = put_entry(buf, sizeof(uint32_t), 2, fp); in ocontext_write_selinux()
1493 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1500 items = put_entry(buf, sizeof(uint32_t), 2, fp); in ocontext_write_selinux()
1503 items = put_entry(c->u.name, 1, len, fp); in ocontext_write_selinux()
1506 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1514 items = put_entry(buf, sizeof(uint32_t), 8, fp); in ocontext_write_selinux()
1517 if (context_write(p, &c->context[0], fp)) in ocontext_write_selinux()
1527 struct policy_file *fp) in ocontext_write() argument
1532 rc = ocontext_write_selinux(info, p, fp); in ocontext_write()
1535 rc = ocontext_write_xen(info, p, fp); in ocontext_write()
1541 static int genfs_write(policydb_t * p, struct policy_file *fp) in genfs_write() argument
1551 items = put_entry(buf, sizeof(uint32_t), 1, fp); in genfs_write()
1557 items = put_entry(buf, sizeof(uint32_t), 1, fp); in genfs_write()
1560 items = put_entry(genfs->fstype, 1, len, fp); in genfs_write()
1567 items = put_entry(buf, sizeof(uint32_t), 1, fp); in genfs_write()
1573 items = put_entry(buf, sizeof(uint32_t), 1, fp); in genfs_write()
1576 items = put_entry(c->u.name, 1, len, fp); in genfs_write()
1580 items = put_entry(buf, sizeof(uint32_t), 1, fp); in genfs_write()
1583 if (context_write(p, &c->context[0], fp)) in genfs_write()
1594 struct policy_file *fp; member
1618 struct policy_file *fp = args->fp; in range_write_helper() local
1626 WARN(fp->handle, "Discarding range_transition " in range_write_helper()
1635 items = put_entry(buf, sizeof(uint32_t), 2, fp); in range_write_helper()
1640 items = put_entry(buf, sizeof(uint32_t), 1, fp); in range_write_helper()
1644 rc = mls_write_range_helper(r, fp); in range_write_helper()
1651 static int range_write(policydb_t * p, struct policy_file *fp) in range_write() argument
1662 args.fp = fp; in range_write()
1668 items = put_entry(buf, sizeof(uint32_t), 1, fp); in range_write()
1678 struct policy_file *fp) in avrule_write() argument
1687 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in avrule_write()
1691 if (type_set_write(&avrule->stypes, fp)) in avrule_write()
1694 if (type_set_write(&avrule->ttypes, fp)) in avrule_write()
1705 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in avrule_write()
1713 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in avrule_write()
1727 ERR(fp->handle, in avrule_write()
1735 ERR(fp->handle, in avrule_write()
1743 items = put_entry(&buf8, sizeof(uint8_t),1,fp); in avrule_write()
1747 items = put_entry(&buf8, sizeof(uint8_t),1,fp); in avrule_write()
1752 items = put_entry(buf32, sizeof(uint32_t), nel, fp); in avrule_write()
1761 struct policy_file *fp) in avrule_write_list() argument
1774 if (put_entry(buf, sizeof(uint32_t), 1, fp) != 1) in avrule_write_list()
1779 if (avrule_write(p, avrule, fp)) in avrule_write_list()
1800 struct policy_file *fp) in role_trans_rule_write() argument
1814 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_trans_rule_write()
1820 WARN(fp->handle, "Discarding role_transition " in role_trans_rule_write()
1826 if (role_set_write(&tr->roles, fp)) in role_trans_rule_write()
1828 if (type_set_write(&tr->types, fp)) in role_trans_rule_write()
1831 if (ebitmap_write(&tr->classes, fp)) in role_trans_rule_write()
1834 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_trans_rule_write()
1841 static int role_allow_rule_write(role_allow_rule_t * r, struct policy_file *fp) in role_allow_rule_write() argument
1851 items = put_entry(buf, sizeof(uint32_t), 1, fp); in role_allow_rule_write()
1855 if (role_set_write(&ra->roles, fp)) in role_allow_rule_write()
1857 if (role_set_write(&ra->new_roles, fp)) in role_allow_rule_write()
1863 static int filename_trans_rule_write(filename_trans_rule_t * t, struct policy_file *fp) in filename_trans_rule_write() argument
1874 items = put_entry(buf, sizeof(uint32_t), 1, fp); in filename_trans_rule_write()
1881 items = put_entry(buf, sizeof(uint32_t), 1, fp); in filename_trans_rule_write()
1885 items = put_entry(ftr->name, sizeof(char), len, fp); in filename_trans_rule_write()
1889 if (type_set_write(&ftr->stypes, fp)) in filename_trans_rule_write()
1891 if (type_set_write(&ftr->ttypes, fp)) in filename_trans_rule_write()
1897 items = put_entry(buf, sizeof(uint32_t), 2, fp); in filename_trans_rule_write()
1905 struct policy_file *fp) in range_trans_rule_write() argument
1915 items = put_entry(buf, sizeof(uint32_t), 1, fp); in range_trans_rule_write()
1919 if (type_set_write(&rt->stypes, fp)) in range_trans_rule_write()
1921 if (type_set_write(&rt->ttypes, fp)) in range_trans_rule_write()
1923 if (ebitmap_write(&rt->tclasses, fp)) in range_trans_rule_write()
1925 if (mls_write_semantic_range_helper(&rt->trange, fp)) in range_trans_rule_write()
1933 struct policy_file *fp) in scope_index_write() argument
1938 if (ebitmap_write(scope_index->scope + i, fp) == -1) { in scope_index_write()
1943 if (put_entry(buf, sizeof(uint32_t), 1, fp) != 1) { in scope_index_write()
1947 if (ebitmap_write(scope_index->class_perms_map + i, fp) == -1) { in scope_index_write()
1955 policydb_t * p, struct policy_file *fp) in avrule_decl_write() argument
1962 if (put_entry(buf, sizeof(uint32_t), 2, fp) != 2) { in avrule_decl_write()
1965 if (cond_write_list(p, decl->cond_list, fp) == -1 || in avrule_decl_write()
1966 avrule_write_list(p, decl->avrules, fp) == -1 || in avrule_decl_write()
1967 role_trans_rule_write(p, decl->role_tr_rules, fp) == -1 || in avrule_decl_write()
1968 role_allow_rule_write(decl->role_allow_rules, fp) == -1) { in avrule_decl_write()
1973 filename_trans_rule_write(decl->filename_trans_rules, fp)) in avrule_decl_write()
1977 range_trans_rule_write(decl->range_tr_rules, fp) == -1) { in avrule_decl_write()
1980 if (scope_index_write(&decl->required, num_scope_syms, fp) == -1 || in avrule_decl_write()
1981 scope_index_write(&decl->declared, num_scope_syms, fp) == -1) { in avrule_decl_write()
1984 pd.fp = fp; in avrule_decl_write()
1989 if (put_entry(buf, sizeof(uint32_t), 2, fp) != 2) { in avrule_decl_write()
2000 policydb_t * p, struct policy_file *fp) in avrule_block_write() argument
2009 if (put_entry(buf, sizeof(uint32_t), 1, fp) != 1) { in avrule_block_write()
2022 if (put_entry(buf, sizeof(uint32_t), 1, fp) != 1) { in avrule_block_write()
2026 if (avrule_decl_write(decl, num_scope_syms, p, fp) == in avrule_block_write()
2039 struct policy_file *fp = pd->fp; in scope_write() local
2059 if (put_entry(buf, sizeof(*buf), 1, fp) != 1 || in scope_write()
2060 put_entry(key, 1, key_len, fp) != key_len) in scope_write()
2069 if (put_entry(buf, sizeof(*buf), items, fp) != items) in scope_write()
2108 int policydb_write(policydb_t * p, struct policy_file *fp) in policydb_write() argument
2120 pd.fp = fp; in policydb_write()
2131 ERR(fp->handle, "policy version %d cannot support MLS", in policydb_write()
2154 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in policydb_write()
2157 items = put_entry(policydb_str, 1, len, fp); in policydb_write()
2166 ERR(fp->handle, "compatibility lookup failed for policy " in policydb_write()
2179 items2 = put_entry(buf, sizeof(uint32_t), items, fp); in policydb_write()
2187 items = put_entry(buf, sizeof(uint32_t), 1, fp); in policydb_write()
2190 items = put_entry(p->name, 1, len, fp); in policydb_write()
2195 items = put_entry(buf, sizeof(uint32_t), 1, fp); in policydb_write()
2198 items = put_entry(p->version, 1, len, fp); in policydb_write()
2209 if (ebitmap_write(&p->policycaps, fp) == -1) in policydb_write()
2218 WARN(fp->handle, "Warning! Policy version %d cannot " in policydb_write()
2227 if (ebitmap_write(&p->permissive_map, fp) == -1) in policydb_write()
2261 items = put_entry(buf, sizeof(uint32_t), 2, fp); in policydb_write()
2269 if (avtab_write(p, &p->te_avtab, fp)) in policydb_write()
2273 WARN(fp->handle, "Discarding " in policydb_write()
2276 if (cond_write_list(p, p->cond_list, fp)) in policydb_write()
2279 if (role_trans_write(p, fp)) in policydb_write()
2281 if (role_allow_write(p->role_allow, fp)) in policydb_write()
2284 if (filename_trans_write(p, fp)) in policydb_write()
2288 WARN(fp->handle, "Discarding filename type transition rules"); in policydb_write()
2291 if (avrule_block_write(p->global, num_syms, p, fp) == -1) { in policydb_write()
2297 if (put_entry(buf, sizeof(uint32_t), 1, fp) != 1) { in policydb_write()
2305 if (ocontext_write(info, p, fp) == -1 || genfs_write(p, fp) == -1) { in policydb_write()
2314 if (range_write(p, fp)) { in policydb_write()
2322 if (ebitmap_write(&p->type_attr_map[i], fp) == -1) in policydb_write()