summaryrefslogtreecommitdiff
path: root/security
diff options
context:
space:
mode:
authorchao liu <liuzgyid@outlook.com>2023-06-27 10:03:16 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-12-14 19:51:11 +0100
commit487b128f07b82294bd0847c2c462dfcf1de9660a (patch)
treed9ab310f92b8bd93b3a8721314a79477d4c9c8b3 /security
parent3c7355690f375bcfa3639aea7daa801789a85532 (diff)
downloadlinux-487b128f07b82294bd0847c2c462dfcf1de9660a.tar.gz
linux-487b128f07b82294bd0847c2c462dfcf1de9660a.tar.bz2
linux-487b128f07b82294bd0847c2c462dfcf1de9660a.zip
apparmor: fix 'Do simple duplicate message elimination'
[ Upstream commit 9b897132424fe76bf6c61f22f9cf12af7f1d1e6a ] Multiple profiles shared 'ent->caps', so some logs missed. Fixes: 0ed3b28ab8bf ("AppArmor: mediation of non file objects") Signed-off-by: chao liu <liuzgyid@outlook.com> Signed-off-by: John Johansen <john.johansen@canonical.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'security')
-rw-r--r--security/apparmor/capability.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/security/apparmor/capability.c b/security/apparmor/capability.c
index deccea8654ad..1b13fd89d5a9 100644
--- a/security/apparmor/capability.c
+++ b/security/apparmor/capability.c
@@ -94,6 +94,8 @@ static int audit_caps(struct common_audit_data *sa, struct aa_profile *profile,
return error;
} else {
aa_put_profile(ent->profile);
+ if (profile != ent->profile)
+ cap_clear(ent->caps);
ent->profile = aa_get_profile(profile);
cap_raise(ent->caps, cap);
}