selinux: fix memleak in security_read_state_kernel()
authorXiu Jianfeng <xiujianfeng@huawei.com>
Mon, 13 Jun 2022 13:59:53 +0000 (21:59 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Aug 2022 12:23:04 +0000 (14:23 +0200)
commitc877c5217145bda8fd95f506bf42f8d981afa57d
tree9ff94f66abee7ea6e915df5f9077b76a8c81f7e7
parent2f0e18e0db42f4f8bc87d3d98333680065ceeff8
selinux: fix memleak in security_read_state_kernel()

[ Upstream commit 73de1befcc53a7c68b0c5e76b9b5ac41c517760f ]

In this function, it directly returns the result of __security_read_policy
without freeing the allocated memory in *data, cause memory leak issue,
so free the memory if __security_read_policy failed.

Signed-off-by: Xiu Jianfeng <xiujianfeng@huawei.com>
[PM: subject line tweak]
Signed-off-by: Paul Moore <paul@paul-moore.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
security/selinux/ss/services.c