1 /*
2  * AppArmor security module
3  *
4  * This file contains AppArmor security domain transition function definitions.
5  *
6  * Copyright (C) 1998-2008 Novell/SUSE
7  * Copyright 2009-2010 Canonical Ltd.
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License as
11  * published by the Free Software Foundation, version 2 of the
12  * License.
13  */
14 
15 #include <linux/binfmts.h>
16 #include <linux/types.h>
17 
18 #ifndef __AA_DOMAIN_H
19 #define __AA_DOMAIN_H
20 
21 struct aa_domain {
22 	int size;
23 	char **table;
24 };
25 
26 int apparmor_bprm_set_creds(struct linux_binprm *bprm);
27 int apparmor_bprm_secureexec(struct linux_binprm *bprm);
28 void apparmor_bprm_committing_creds(struct linux_binprm *bprm);
29 void apparmor_bprm_committed_creds(struct linux_binprm *bprm);
30 
31 void aa_free_domain_entries(struct aa_domain *domain);
32 int aa_change_hat(const char *hats[], int count, u64 token, bool permtest);
33 int aa_change_profile(const char *fqname, bool onexec, bool permtest,
34 		      bool stack);
35 
36 #endif /* __AA_DOMAIN_H */
37