mirror of
https://github.com/torvalds/linux.git
synced 2024-11-19 18:41:48 +00:00
crypto: arm64/aes - do not call crypto_unregister_skcipher twice on error
When a cipher fails to register in aes_init(), the error path goes thought aes_exit() then crypto_unregister_skciphers(). Since aes_exit calls also crypto_unregister_skcipher, this triggers a refcount_t: underflow; use-after-free. Signed-off-by: Corentin Labbe <clabbe@baylibre.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
9f480faec5
commit
45223b7811
@ -665,6 +665,7 @@ static int __init aes_init(void)
|
|||||||
|
|
||||||
unregister_simds:
|
unregister_simds:
|
||||||
aes_exit();
|
aes_exit();
|
||||||
|
return err;
|
||||||
unregister_ciphers:
|
unregister_ciphers:
|
||||||
crypto_unregister_skciphers(aes_algs, ARRAY_SIZE(aes_algs));
|
crypto_unregister_skciphers(aes_algs, ARRAY_SIZE(aes_algs));
|
||||||
return err;
|
return err;
|
||||||
|
Loading…
Reference in New Issue
Block a user