diff options
Diffstat (limited to 'crypto/api.c')
-rw-r--r-- | crypto/api.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/crypto/api.c b/crypto/api.c index f55856b21992..0b583d24f7fa 100644 --- a/crypto/api.c +++ b/crypto/api.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/crypto.h> | 17 | #include <linux/crypto.h> |
18 | #include <linux/errno.h> | 18 | #include <linux/errno.h> |
19 | #include <linux/kmod.h> | ||
19 | #include <linux/rwsem.h> | 20 | #include <linux/rwsem.h> |
20 | #include <linux/slab.h> | 21 | #include <linux/slab.h> |
21 | #include "internal.h" | 22 | #include "internal.h" |
@@ -33,7 +34,7 @@ static inline void crypto_alg_put(struct crypto_alg *alg) | |||
33 | module_put(alg->cra_module); | 34 | module_put(alg->cra_module); |
34 | } | 35 | } |
35 | 36 | ||
36 | struct crypto_alg *crypto_alg_lookup(const char *name) | 37 | static struct crypto_alg *crypto_alg_lookup(const char *name) |
37 | { | 38 | { |
38 | struct crypto_alg *q, *alg = NULL; | 39 | struct crypto_alg *q, *alg = NULL; |
39 | 40 | ||
@@ -54,6 +55,13 @@ struct crypto_alg *crypto_alg_lookup(const char *name) | |||
54 | return alg; | 55 | return alg; |
55 | } | 56 | } |
56 | 57 | ||
58 | /* A far more intelligent version of this is planned. For now, just | ||
59 | * try an exact match on the name of the algorithm. */ | ||
60 | static inline struct crypto_alg *crypto_alg_mod_lookup(const char *name) | ||
61 | { | ||
62 | return try_then_request_module(crypto_alg_lookup(name), name); | ||
63 | } | ||
64 | |||
57 | static int crypto_init_flags(struct crypto_tfm *tfm, u32 flags) | 65 | static int crypto_init_flags(struct crypto_tfm *tfm, u32 flags) |
58 | { | 66 | { |
59 | tfm->crt_flags = 0; | 67 | tfm->crt_flags = 0; |