crypto: ecdh - fix 'ecdh_init'
NIST P192 is not unregistered if failed to register NIST P256, actually it need to unregister the algorithms already registered. Signed-off-by: Hui Tang <tanghui20@huawei.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
6889fc2104
commit
8fd28fa504
|
@ -183,7 +183,16 @@ static int ecdh_init(void)
|
||||||
ret = crypto_register_kpp(&ecdh_nist_p192);
|
ret = crypto_register_kpp(&ecdh_nist_p192);
|
||||||
ecdh_nist_p192_registered = ret == 0;
|
ecdh_nist_p192_registered = ret == 0;
|
||||||
|
|
||||||
return crypto_register_kpp(&ecdh_nist_p256);
|
ret = crypto_register_kpp(&ecdh_nist_p256);
|
||||||
|
if (ret)
|
||||||
|
goto nist_p256_error;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
nist_p256_error:
|
||||||
|
if (ecdh_nist_p192_registered)
|
||||||
|
crypto_unregister_kpp(&ecdh_nist_p192);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ecdh_exit(void)
|
static void ecdh_exit(void)
|
||||||
|
|
Loading…
Reference in New Issue