Skip to content

Commit 654fe75

Browse files
zygajrjohansen
authored andcommitted
apparmor: aa_label_alloc use aa_label_free on alloc failure
aa_label_alloc() allocates a secid before allocating or taking the label proxy. If the later proxy step fails, the error path only freed the label memory, leaking any resources initialized by aa_label_init(). Use aa_label_free() on the failure path so partially initialized labels release their secid and other label resources before the backing memory is freed. Fixes: f1bd904 ("apparmor: add the base fns() for domain labels") Signed-off-by: Zygmunt Krynicki <me@zygoon.pl> Signed-off-by: John Johansen <john.johansen@canonical.com>
1 parent a58cafd commit 654fe75

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

security/apparmor/label.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -458,7 +458,7 @@ struct aa_label *aa_label_alloc(int size, struct aa_proxy *proxy, gfp_t gfp)
458458
return new;
459459

460460
fail:
461-
kfree(new);
461+
aa_label_free(new);
462462

463463
return NULL;
464464
}

0 commit comments

Comments
 (0)