Commit e33cf2c5 authored by Herbert Xu's avatar Herbert Xu

crypto: krng - Convert to new rng interface

This patch ocnverts the KRNG implementation to the new low-level
rng interface.
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent e7c2422a
...@@ -16,31 +16,27 @@ ...@@ -16,31 +16,27 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/random.h> #include <linux/random.h>
static int krng_get_random(struct crypto_rng *tfm, u8 *rdata, unsigned int dlen) static int krng_generate(struct crypto_rng *tfm,
const u8 *src, unsigned int slen,
u8 *rdata, unsigned int dlen)
{ {
get_random_bytes(rdata, dlen); get_random_bytes(rdata, dlen);
return 0; return 0;
} }
static int krng_reset(struct crypto_rng *tfm, u8 *seed, unsigned int slen) static int krng_seed(struct crypto_rng *tfm, const u8 *seed, unsigned int slen)
{ {
return 0; return 0;
} }
static struct crypto_alg krng_alg = { static struct rng_alg krng_alg = {
.cra_name = "stdrng", .generate = krng_generate,
.cra_driver_name = "krng", .seed = krng_seed,
.cra_priority = 200, .base = {
.cra_flags = CRYPTO_ALG_TYPE_RNG, .cra_name = "stdrng",
.cra_ctxsize = 0, .cra_driver_name = "krng",
.cra_type = &crypto_rng_type, .cra_priority = 200,
.cra_module = THIS_MODULE, .cra_module = THIS_MODULE,
.cra_u = {
.rng = {
.rng_make_random = krng_get_random,
.rng_reset = krng_reset,
.seedsize = 0,
}
} }
}; };
...@@ -48,13 +44,12 @@ static struct crypto_alg krng_alg = { ...@@ -48,13 +44,12 @@ static struct crypto_alg krng_alg = {
/* Module initalization */ /* Module initalization */
static int __init krng_mod_init(void) static int __init krng_mod_init(void)
{ {
return crypto_register_alg(&krng_alg); return crypto_register_rng(&krng_alg);
} }
static void __exit krng_mod_fini(void) static void __exit krng_mod_fini(void)
{ {
crypto_unregister_alg(&krng_alg); crypto_unregister_rng(&krng_alg);
return;
} }
module_init(krng_mod_init); module_init(krng_mod_init);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment