Lines Matching refs:file
239 /* Append each of the file contexts from each module to the base
240 * policy's file context. 'base_context' will be reallocated to a
242 * variable). 'base_fc_len' is the length of base's file context; it
350 static int read_helper(char *buf, struct policy_file *file, uint32_t bytes)
363 rc = next_entry(&buf[offset], file, read_len);
374 /* Get the section offsets from a package file, offsets will be malloc'd to
377 struct policy_file *file,
387 ERR(file->handle, "out of memory");
391 rc = next_entry(buf, file, sizeof(uint32_t) * 3);
393 ERR(file->handle, "module package header truncated");
397 ERR(file->handle,
407 ERR(file->handle, "too many sections (%u) in module package",
414 ERR(file->handle, "out of memory");
421 ERR(file->handle, "out of memory");
424 rc = next_entry(buf, file, sizeof(uint32_t) * nsec);
426 ERR(file->handle, "module package offset array truncated");
433 ERR(file->handle, "offsets are not increasing (at %u, "
440 rc = policy_file_length(file, &off[nsec]);
445 ERR(file->handle, "offset greater than file size (at %u, "
470 struct policy_file *file = &spf->pf;
476 if (module_package_read_offsets(mod, file, &offsets, &nsec))
483 if (policy_file_seek(file, offsets[i])) {
484 ERR(file->handle, "error seeking to offset %zu for "
492 ERR(file->handle, "module package section %u "
498 rc = next_entry(buf, file, sizeof(uint32_t));
500 ERR(file->handle,
509 ERR(file->handle,
510 "found multiple file contexts sections in module package (at section %u)",
519 ERR(file->handle, "out of memory");
523 (mod->file_contexts, file,
525 ERR(file->handle,
526 "invalid file contexts section at section %u",
536 ERR(file->handle,
545 ERR(file->handle, "out of memory");
548 if (read_helper(mod->seusers, file, mod->seusers_len)) {
549 ERR(file->handle,
559 ERR(file->handle,
568 ERR(file->handle, "out of memory");
572 (mod->user_extra, file, mod->user_extra_len)) {
573 ERR(file->handle,
584 ERR(file->handle,
594 ERR(file->handle, "out of memory");
598 (mod->netfilter_contexts, file,
600 ERR(file->handle,
611 ERR(file->handle,
618 if (policy_file_seek(file, offsets[i]))
621 rc = policydb_read(&mod->policy->p, file, verbose);
623 ERR(file->handle,
632 ERR(file->handle,
640 ERR(file->handle, "missing module in module package");
655 struct policy_file *file = &spf->pf;
666 if (module_package_read_offsets(mod, file, &offsets, &nsec)) {
672 if (policy_file_seek(file, offsets[i])) {
673 ERR(file->handle, "error seeking to offset "
681 ERR(file->handle,
688 rc = next_entry(buf, file, sizeof(uint32_t) * 2);
690 ERR(file->handle,
698 /* skip file contexts */
700 ERR(file->handle,
701 "found multiple file contexts sections in module package (at section %u)",
710 ERR(file->handle,
720 ERR(file->handle,
730 ERR(file->handle,
739 ERR(file->handle,
746 ERR(file->handle,
755 ERR(file->handle,
760 rc = next_entry(id, file, len);
763 ERR(file->handle,
769 rc = next_entry(buf, file, sizeof(uint32_t) * 5);
771 ERR(file->handle,
785 ERR(file->handle,
792 rc = next_entry(buf, file, sizeof(uint32_t));
794 ERR(file->handle,
801 if (str_read(name, file, len)) {
802 ERR(file->handle,
808 rc = next_entry(buf, file, sizeof(uint32_t));
810 ERR(file->handle,
816 if (str_read(version, file, len)) {
817 ERR(file->handle,
831 ERR(file->handle, "missing module in module package");
845 static int write_helper(char *data, size_t len, struct policy_file *file)
856 if (put_entry(&data[idx], 1, len2, file) != len2) {
868 struct policy_file *file = &spf->pf;
877 polfile.handle = file->handle;
893 ERR(file->handle,
913 if (put_entry(buf, sizeof(uint32_t), 3, file) != 3)
946 if (put_entry(buf, sizeof(uint32_t), nsec, file) != nsec)
951 if (policydb_write(&p->policy->p, file))
956 if (put_entry(buf, sizeof(uint32_t), 1, file) != 1)
958 if (write_helper(p->file_contexts, p->file_contexts_len, file))
963 if (put_entry(buf, sizeof(uint32_t), 1, file) != 1)
965 if (write_helper(p->seusers, p->seusers_len, file))
971 if (put_entry(buf, sizeof(uint32_t), 1, file) != 1)
973 if (write_helper(p->user_extra, p->user_extra_len, file))
978 if (put_entry(buf, sizeof(uint32_t), 1, file) != 1)
981 (p->netfilter_contexts, p->netfilter_contexts_len, file))