diff options
author | 2020-03-30 16:43:29 -0400 | |
---|---|---|
committer | 2022-10-03 14:49:02 -0700 | |
commit | 408d53e923bd852d5d80243a642004163db53a87 (patch) | |
tree | 9c3b52675bc86ff7dde78510078f199443642144 /security/apparmor/policy_unpack.c | |
parent | apparmor: expose compression level limits in sysfs (diff) | |
download | wireguard-linux-408d53e923bd852d5d80243a642004163db53a87.tar.xz wireguard-linux-408d53e923bd852d5d80243a642004163db53a87.zip |
apparmor: compute file permissions on profile load
Rather than computing file permissions for each file access, file
permissions can be computed once on profile load and stored for lookup.
Signed-off-by: Mike Salvatore <mike.salvatore@canonical.com>
Signed-off-by: John Johansen <john.johansen@canonical.com>
Diffstat (limited to '')
-rw-r--r-- | security/apparmor/policy_unpack.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/security/apparmor/policy_unpack.c b/security/apparmor/policy_unpack.c index 10e462d00321..54175bca4256 100644 --- a/security/apparmor/policy_unpack.c +++ b/security/apparmor/policy_unpack.c @@ -22,6 +22,7 @@ #include "include/audit.h" #include "include/cred.h" #include "include/crypto.h" +#include "include/file.h" #include "include/match.h" #include "include/path.h" #include "include/policy.h" @@ -878,6 +879,8 @@ static struct aa_profile *unpack_profile(struct aa_ext *e, char **ns_name) } else profile->file.dfa = aa_get_dfa(nulldfa); + aa_compute_fperms(&(profile->file)); + if (!unpack_trans_table(e, profile)) { info = "failed to unpack profile transition table"; goto fail; |