Lines Matching full:ee
609 * @ee: Pointer to "struct tomoyo_execve".
613 static int tomoyo_environ(struct tomoyo_execve *ee) in tomoyo_environ() argument
615 struct tomoyo_request_info *r = &ee->r; in tomoyo_environ()
616 struct linux_binprm *bprm = ee->bprm; in tomoyo_environ()
627 ee->r.type = TOMOYO_MAC_ENVIRON; in tomoyo_environ()
628 ee->r.profile = r->domain->profile; in tomoyo_environ()
629 ee->r.mode = tomoyo_get_mode(r->domain->ns, ee->r.profile, in tomoyo_environ()
710 struct tomoyo_execve *ee = kzalloc(sizeof(*ee), GFP_NOFS); in tomoyo_find_next_domain() local
712 if (!ee) in tomoyo_find_next_domain()
714 ee->tmp = kzalloc(TOMOYO_EXEC_TMPSIZE, GFP_NOFS); in tomoyo_find_next_domain()
715 if (!ee->tmp) { in tomoyo_find_next_domain()
716 kfree(ee); in tomoyo_find_next_domain()
719 /* ee->dump->data is allocated by tomoyo_dump_page(). */ in tomoyo_find_next_domain()
720 tomoyo_init_request_info(&ee->r, NULL, TOMOYO_MAC_FILE_EXECUTE); in tomoyo_find_next_domain()
721 ee->r.ee = ee; in tomoyo_find_next_domain()
722 ee->bprm = bprm; in tomoyo_find_next_domain()
723 ee->r.obj = &ee->obj; in tomoyo_find_next_domain()
724 ee->obj.path1 = bprm->file->f_path; in tomoyo_find_next_domain()
762 retval = tomoyo_execute_permission(&ee->r, candidate); in tomoyo_find_next_domain()
773 if (ee->r.param.path.matched_path) in tomoyo_find_next_domain()
774 candidate = ee->r.param.path.matched_path; in tomoyo_find_next_domain()
782 if (ee->transition) { in tomoyo_find_next_domain()
783 const char *domainname = ee->transition->name; in tomoyo_find_next_domain()
797 strscpy(ee->tmp, old_domain->domainname->name, TOMOYO_EXEC_TMPSIZE); in tomoyo_find_next_domain()
798 cp = strrchr(ee->tmp, ' '); in tomoyo_find_next_domain()
802 strscpy(ee->tmp, domainname, TOMOYO_EXEC_TMPSIZE); in tomoyo_find_next_domain()
804 snprintf(ee->tmp, TOMOYO_EXEC_TMPSIZE - 1, "%s %s", in tomoyo_find_next_domain()
817 snprintf(ee->tmp, TOMOYO_EXEC_TMPSIZE - 1, "<%s>", in tomoyo_find_next_domain()
828 snprintf(ee->tmp, TOMOYO_EXEC_TMPSIZE - 1, "%s %s", in tomoyo_find_next_domain()
850 snprintf(ee->tmp, TOMOYO_EXEC_TMPSIZE - 1, "%s %s", in tomoyo_find_next_domain()
856 domain = tomoyo_assign_domain(ee->tmp, true); in tomoyo_find_next_domain()
860 pr_warn("ERROR: Domain '%s' not ready.\n", ee->tmp); in tomoyo_find_next_domain()
862 } else if (ee->r.mode == TOMOYO_CONFIG_ENFORCING) in tomoyo_find_next_domain()
868 ee->r.granted = false; in tomoyo_find_next_domain()
869 tomoyo_write_log(&ee->r, "%s", tomoyo_dif in tomoyo_find_next_domain()
871 pr_warn("ERROR: Domain '%s' not defined.\n", ee->tmp); in tomoyo_find_next_domain()
887 ee->r.domain = domain; in tomoyo_find_next_domain()
888 retval = tomoyo_environ(ee); in tomoyo_find_next_domain()
890 kfree(ee->tmp); in tomoyo_find_next_domain()
891 kfree(ee->dump.data); in tomoyo_find_next_domain()
892 kfree(ee); in tomoyo_find_next_domain()