diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2006-05-23 23:02:26 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2006-06-26 03:34:40 -0400 |
commit | c7fc05992afcf1d63d6d5fb6142c8d39094dbca9 (patch) | |
tree | 201d72844c0b27269e34bf3172d579b9e556e10c /include | |
parent | 110bf1c0e932615cbe43a8af8a07bc3750ae4295 (diff) |
[CRYPTO] api: Added cra_init/cra_exit
This patch adds the hooks cra_init/cra_exit which are called during a tfm's
construction and destruction respectively. This will be used by the instances
to allocate child tfm's.
For now this lets us get rid of the coa_init/coa_exit functions which are
used for exactly that purpose (unlike the dia_init function which is called
for each transaction).
In fact the coa_exit path is currently buggy as it may get called twice
when an error is encountered during initialisation.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/crypto.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/include/linux/crypto.h b/include/linux/crypto.h index ef918803ec30..6c013c88080f 100644 --- a/include/linux/crypto.h +++ b/include/linux/crypto.h | |||
@@ -109,8 +109,6 @@ struct digest_alg { | |||
109 | }; | 109 | }; |
110 | 110 | ||
111 | struct compress_alg { | 111 | struct compress_alg { |
112 | int (*coa_init)(struct crypto_tfm *tfm); | ||
113 | void (*coa_exit)(struct crypto_tfm *tfm); | ||
114 | int (*coa_compress)(struct crypto_tfm *tfm, const u8 *src, | 112 | int (*coa_compress)(struct crypto_tfm *tfm, const u8 *src, |
115 | unsigned int slen, u8 *dst, unsigned int *dlen); | 113 | unsigned int slen, u8 *dst, unsigned int *dlen); |
116 | int (*coa_decompress)(struct crypto_tfm *tfm, const u8 *src, | 114 | int (*coa_decompress)(struct crypto_tfm *tfm, const u8 *src, |
@@ -138,6 +136,9 @@ struct crypto_alg { | |||
138 | struct digest_alg digest; | 136 | struct digest_alg digest; |
139 | struct compress_alg compress; | 137 | struct compress_alg compress; |
140 | } cra_u; | 138 | } cra_u; |
139 | |||
140 | int (*cra_init)(struct crypto_tfm *tfm); | ||
141 | void (*cra_exit)(struct crypto_tfm *tfm); | ||
141 | 142 | ||
142 | struct module *cra_module; | 143 | struct module *cra_module; |
143 | }; | 144 | }; |