mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
crypto: rng - Ensure set_ent is always present
commitc0d36727bfupstream. Ensure that set_ent is always set since only drbg provides it. Fixes:77ebdabe8d("crypto: af_alg - add extra parameters for DRBG interface") Reported-by: Yiqi Sun <sunyiqixm@gmail.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
57a72530fe
commit
e247a7d138
@@ -168,6 +168,11 @@ out:
|
|||||||
EXPORT_SYMBOL_GPL(crypto_del_default_rng);
|
EXPORT_SYMBOL_GPL(crypto_del_default_rng);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
static void rng_default_set_ent(struct crypto_rng *tfm, const u8 *data,
|
||||||
|
unsigned int len)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
int crypto_register_rng(struct rng_alg *alg)
|
int crypto_register_rng(struct rng_alg *alg)
|
||||||
{
|
{
|
||||||
struct crypto_alg *base = &alg->base;
|
struct crypto_alg *base = &alg->base;
|
||||||
@@ -179,6 +184,9 @@ int crypto_register_rng(struct rng_alg *alg)
|
|||||||
base->cra_flags &= ~CRYPTO_ALG_TYPE_MASK;
|
base->cra_flags &= ~CRYPTO_ALG_TYPE_MASK;
|
||||||
base->cra_flags |= CRYPTO_ALG_TYPE_RNG;
|
base->cra_flags |= CRYPTO_ALG_TYPE_RNG;
|
||||||
|
|
||||||
|
if (!alg->set_ent)
|
||||||
|
alg->set_ent = rng_default_set_ent;
|
||||||
|
|
||||||
return crypto_register_alg(base);
|
return crypto_register_alg(base);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(crypto_register_rng);
|
EXPORT_SYMBOL_GPL(crypto_register_rng);
|
||||||
|
|||||||
Reference in New Issue
Block a user