aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/crypto.h
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2009-02-05 16:48:24 +1100
committerHerbert Xu <herbert@gondor.apana.org.au>2009-02-05 16:48:53 +1100
commit7b2cd92adc5430b0c1adeb120971852b4ea1ab08 (patch)
tree217ce22454d6e1d14b4a6e77db6cf60c8e725c12 /include/linux/crypto.h
parentcrypto: shash - Fix module refcount (diff)
downloadlinux-dev-7b2cd92adc5430b0c1adeb120971852b4ea1ab08.tar.xz
linux-dev-7b2cd92adc5430b0c1adeb120971852b4ea1ab08.zip
crypto: api - Fix zeroing on free
Geert Uytterhoeven pointed out that we're not zeroing all the memory when freeing a transform. This patch fixes it by calling ksize to ensure that we zero everything in sight. Reported-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/linux/crypto.h')
-rw-r--r--include/linux/crypto.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/linux/crypto.h b/include/linux/crypto.h
index 3bacd71509fb..1f2e9020acc6 100644
--- a/include/linux/crypto.h
+++ b/include/linux/crypto.h
@@ -552,7 +552,12 @@ struct crypto_tfm *crypto_alloc_tfm(const char *alg_name,
const struct crypto_type *frontend,
u32 type, u32 mask);
struct crypto_tfm *crypto_alloc_base(const char *alg_name, u32 type, u32 mask);
-void crypto_free_tfm(struct crypto_tfm *tfm);
+void crypto_destroy_tfm(void *mem, struct crypto_tfm *tfm);
+
+static inline void crypto_free_tfm(struct crypto_tfm *tfm)
+{
+ return crypto_destroy_tfm(tfm, tfm);
+}
int alg_test(const char *driver, const char *alg, u32 type, u32 mask);