apparmor: Fix memleak in aa_simple_write_to_buffer()
authorXiu Jianfeng <xiujianfeng@huawei.com>
Tue, 14 Jun 2022 09:00:01 +0000 (17:00 +0800)
committerJohn Johansen <john.johansen@canonical.com>
Sat, 9 Jul 2022 22:13:59 +0000 (15:13 -0700)
commit417ea9fe972d2654a268ad66e89c8fcae67017c3
tree25481a3e42f8903bd8154c12e189f9ba29cbce47
parent11c3627ec6b56c1525013f336f41b79a983b4d46
apparmor: Fix memleak in aa_simple_write_to_buffer()

When copy_from_user failed, the memory is freed by kvfree. however the
management struct and data blob are allocated independently, so only
kvfree(data) cause a memleak issue here. Use aa_put_loaddata(data) to
fix this issue.

Fixes: a6a52579e52b5 ("apparmor: split load data into management struct and data blob")
Signed-off-by: Xiu Jianfeng <xiujianfeng@huawei.com>
Signed-off-by: John Johansen <john.johansen@canonical.com>
security/apparmor/apparmorfs.c