forked from Minki/linux
ubifs: Fix memleak in ubifs_init_authentication
When crypto_shash_digestsize() fails, c->hmac_tfm
has not been freed before returning, which leads
to memleak.
Fixes: 49525e5eec
("ubifs: Add helper functions for authentication support")
Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn>
Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
parent
19646447ad
commit
11b8ab3836
@ -327,7 +327,7 @@ int ubifs_init_authentication(struct ubifs_info *c)
|
|||||||
ubifs_err(c, "hmac %s is bigger than maximum allowed hmac size (%d > %d)",
|
ubifs_err(c, "hmac %s is bigger than maximum allowed hmac size (%d > %d)",
|
||||||
hmac_name, c->hmac_desc_len, UBIFS_HMAC_ARR_SZ);
|
hmac_name, c->hmac_desc_len, UBIFS_HMAC_ARR_SZ);
|
||||||
err = -EINVAL;
|
err = -EINVAL;
|
||||||
goto out_free_hash;
|
goto out_free_hmac;
|
||||||
}
|
}
|
||||||
|
|
||||||
err = crypto_shash_setkey(c->hmac_tfm, ukp->data, ukp->datalen);
|
err = crypto_shash_setkey(c->hmac_tfm, ukp->data, ukp->datalen);
|
||||||
|
Loading…
Reference in New Issue
Block a user