From: Dinghao Liu <dinghao....@zju.edu.cn> [ Upstream commit 11b8ab3836454a2600e396f34731e491b661f9d5 ]
When crypto_shash_digestsize() fails, c->hmac_tfm has not been freed before returning, which leads to memleak. Fixes: 49525e5eecca5 ("ubifs: Add helper functions for authentication support") Signed-off-by: Dinghao Liu <dinghao....@zju.edu.cn> Reviewed-by: Zhihao Cheng <chengzhih...@huawei.com> Signed-off-by: Richard Weinberger <rich...@nod.at> Signed-off-by: Sasha Levin <sas...@kernel.org> --- fs/ubifs/auth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/ubifs/auth.c b/fs/ubifs/auth.c index 8c50de693e1d4..50e88a2ab88ff 100644 --- a/fs/ubifs/auth.c +++ b/fs/ubifs/auth.c @@ -328,7 +328,7 @@ int ubifs_init_authentication(struct ubifs_info *c) ubifs_err(c, "hmac %s is bigger than maximum allowed hmac size (%d > %d)", hmac_name, c->hmac_desc_len, UBIFS_HMAC_ARR_SZ); err = -EINVAL; - goto out_free_hash; + goto out_free_hmac; } err = crypto_shash_setkey(c->hmac_tfm, ukp->data, ukp->datalen); -- 2.27.0