apparmor: fix mediation of prlimit
For primit apparmor requires that if target confinement does not match
the setting task's confinement, the setting task requires CAP_SYS_RESOURCE.
Unfortunately this was broken when rlimit enforcement was reworked to
support labels.
Fixes: 86b92cb782
("apparmor: move resource checks to using labels")
Signed-off-by: John Johansen <john.johansen@canonical.com>
This commit is contained in:
parent
a4c3f89c9b
commit
11c92f144b
|
@ -124,7 +124,7 @@ int aa_task_setrlimit(struct aa_label *label, struct task_struct *task,
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (label != peer &&
|
if (label != peer &&
|
||||||
!aa_capable(label, CAP_SYS_RESOURCE, SECURITY_CAP_NOAUDIT))
|
aa_capable(label, CAP_SYS_RESOURCE, SECURITY_CAP_NOAUDIT) != 0)
|
||||||
error = fn_for_each(label, profile,
|
error = fn_for_each(label, profile,
|
||||||
audit_resource(profile, resource,
|
audit_resource(profile, resource,
|
||||||
new_rlim->rlim_max, peer,
|
new_rlim->rlim_max, peer,
|
||||||
|
|
Loading…
Reference in New Issue