diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2007-04-08 07:31:36 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2007-05-02 00:38:32 -0400 |
commit | a73e69965fa2647faa36caf40f4132b9c99d61fd (patch) | |
tree | 8c138eaeb2daeb58d5634961607d37d258729349 /include/crypto/algapi.h | |
parent | cf02f5da9437201d57d93f529839dd40aac8b5f9 (diff) |
[CRYPTO] api: Do not remove users unless new algorithm matches
As it is whenever a new algorithm with the same name is registered
users of the old algorithm will be removed so that they can take
advantage of the new algorithm. This presents a problem when the
new algorithm is not equivalent to the old algorithm. In particular,
the new algorithm might only function on top of the existing one.
Hence we should not remove users unless they can make use of the
new algorithm.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto/algapi.h')
-rw-r--r-- | include/crypto/algapi.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/crypto/algapi.h b/include/crypto/algapi.h index 469f511315c5..7847fc2a03f0 100644 --- a/include/crypto/algapi.h +++ b/include/crypto/algapi.h | |||
@@ -51,6 +51,7 @@ struct crypto_spawn { | |||
51 | struct list_head list; | 51 | struct list_head list; |
52 | struct crypto_alg *alg; | 52 | struct crypto_alg *alg; |
53 | struct crypto_instance *inst; | 53 | struct crypto_instance *inst; |
54 | u32 mask; | ||
54 | }; | 55 | }; |
55 | 56 | ||
56 | struct crypto_queue { | 57 | struct crypto_queue { |
@@ -103,7 +104,7 @@ void crypto_unregister_template(struct crypto_template *tmpl); | |||
103 | struct crypto_template *crypto_lookup_template(const char *name); | 104 | struct crypto_template *crypto_lookup_template(const char *name); |
104 | 105 | ||
105 | int crypto_init_spawn(struct crypto_spawn *spawn, struct crypto_alg *alg, | 106 | int crypto_init_spawn(struct crypto_spawn *spawn, struct crypto_alg *alg, |
106 | struct crypto_instance *inst); | 107 | struct crypto_instance *inst, u32 mask); |
107 | void crypto_drop_spawn(struct crypto_spawn *spawn); | 108 | void crypto_drop_spawn(struct crypto_spawn *spawn); |
108 | struct crypto_tfm *crypto_spawn_tfm(struct crypto_spawn *spawn, u32 type, | 109 | struct crypto_tfm *crypto_spawn_tfm(struct crypto_spawn *spawn, u32 type, |
109 | u32 mask); | 110 | u32 mask); |