1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * AppArmor security module 4 * 5 * This file contains AppArmor security domain transition function definitions. 6 * 7 * Copyright (C) 1998-2008 Novell/SUSE 8 * Copyright 2009-2010 Canonical Ltd. 9 */ 10 11 #include <linux/binfmts.h> 12 #include <linux/types.h> 13 14 #include "label.h" 15 16 #ifndef __AA_DOMAIN_H 17 #define __AA_DOMAIN_H 18 19 struct aa_domain { 20 int size; 21 char **table; 22 }; 23 24 #define AA_CHANGE_NOFLAGS 0 25 #define AA_CHANGE_TEST 1 26 #define AA_CHANGE_CHILD 2 27 #define AA_CHANGE_ONEXEC 4 28 #define AA_CHANGE_STACK 8 29 30 struct aa_label *x_table_lookup(struct aa_profile *profile, u32 xindex, 31 const char **name); 32 33 int apparmor_bprm_creds_for_exec(struct linux_binprm *bprm); 34 35 void aa_free_domain_entries(struct aa_domain *domain); 36 int aa_change_hat(const char *hats[], int count, u64 token, int flags); 37 int aa_change_profile(const char *fqname, int flags); 38 39 #endif /* __AA_DOMAIN_H */ 40