aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/crypto.h
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2006-05-23 23:02:26 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2006-06-26 03:34:40 -0400
commitc7fc05992afcf1d63d6d5fb6142c8d39094dbca9 (patch)
tree201d72844c0b27269e34bf3172d579b9e556e10c /include/linux/crypto.h
parent110bf1c0e932615cbe43a8af8a07bc3750ae4295 (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/linux/crypto.h')
-rw-r--r--include/linux/crypto.h5
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
111struct compress_alg { 111struct 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};