Commit 881cd6c5 authored by Herbert Xu's avatar Herbert Xu

crypto: rng - Add multiple algorithm registration interface

This patch adds the helpers that allow the registration and removal
of multiple RNG algorithms.
Signed-off-by: default avatarHerbert Xu <>
parent 7ca99d81
......@@ -233,5 +233,34 @@ void crypto_unregister_rng(struct rng_alg *alg)
int crypto_register_rngs(struct rng_alg *algs, int count)
int i, ret;
for (i = 0; i < count; i++) {
ret = crypto_register_rng(algs + i);
if (ret)
goto err;
return 0;
for (--i; i >= 0; --i)
crypto_unregister_rng(algs + i);
return ret;
void crypto_unregister_rngs(struct rng_alg *algs, int count)
int i;
for (i = count - 1; i >= 0; --i)
crypto_unregister_rng(algs + i);
MODULE_DESCRIPTION("Random Number Generator");
......@@ -20,6 +20,8 @@ extern const struct crypto_type crypto_rng_type;
int crypto_register_rng(struct rng_alg *alg);
void crypto_unregister_rng(struct rng_alg *alg);
int crypto_register_rngs(struct rng_alg *algs, int count);
void crypto_unregister_rngs(struct rng_alg *algs, int count);
static inline void *crypto_rng_ctx(struct crypto_rng *tfm)
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment