diff options
| author | Herbert Xu <herbert@gondor.apana.org.au> | 2025-10-02 17:45:39 +0800 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-10-12 13:01:57 +0200 |
| commit | 915cb75983bc5e8b80f8a2f25a4af463f7b18c14 (patch) | |
| tree | c73b72a084fb7ad8c16746cf40f42355cc148ea8 | |
| parent | 15ea288e1dc8ee90d9a04bb197f22599240e42c4 (diff) | |
| download | linux-915cb75983bc5e8b80f8a2f25a4af463f7b18c14.tar.gz linux-915cb75983bc5e8b80f8a2f25a4af463f7b18c14.tar.bz2 linux-915cb75983bc5e8b80f8a2f25a4af463f7b18c14.zip | |
crypto: rng - Ensure set_ent is always present
commit c0d36727bf39bb16ef0a67ed608e279535ebf0da upstream.
Ensure that set_ent is always set since only drbg provides it.
Fixes: 77ebdabe8de7 ("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>
| -rw-r--r-- | crypto/rng.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/crypto/rng.c b/crypto/rng.c index b8ae6ebc091d..ee1768c5a400 100644 --- a/crypto/rng.c +++ b/crypto/rng.c @@ -168,6 +168,11 @@ out: EXPORT_SYMBOL_GPL(crypto_del_default_rng); #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) { 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_RNG; + if (!alg->set_ent) + alg->set_ent = rng_default_set_ent; + return crypto_register_alg(base); } EXPORT_SYMBOL_GPL(crypto_register_rng); |
