diff options
author | Johannes Goetzfried <Johannes.Goetzfried@informatik.stud.uni-erlangen.de> | 2012-07-11 13:37:04 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2012-08-01 05:47:29 -0400 |
commit | 270b0c6b406a0ae7673ee880d1d7cc6bd6c904de (patch) | |
tree | f73fc16f158c1cc3ff13ef6cd1019805ec79b53e /include/crypto | |
parent | 37743cc0d34c4c5cb8520bc27eb2a45141e938fe (diff) |
crypto: cast5 - prepare generic module for optimized implementations
Rename cast5 module to cast5_generic to allow autoloading of optimized
implementations. Generic functions and s-boxes are exported to be able to use
them within optimized implementations.
Signed-off-by: Johannes Goetzfried <Johannes.Goetzfried@informatik.stud.uni-erlangen.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto')
-rw-r--r-- | include/crypto/cast5.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/include/crypto/cast5.h b/include/crypto/cast5.h new file mode 100644 index 000000000000..dcb90c13dd39 --- /dev/null +++ b/include/crypto/cast5.h | |||
@@ -0,0 +1,22 @@ | |||
1 | #ifndef _CRYPTO_CAST5_H | ||
2 | #define _CRYPTO_CAST5_H | ||
3 | |||
4 | #include <linux/types.h> | ||
5 | #include <linux/crypto.h> | ||
6 | |||
7 | #define CAST5_BLOCK_SIZE 8 | ||
8 | #define CAST5_MIN_KEY_SIZE 5 | ||
9 | #define CAST5_MAX_KEY_SIZE 16 | ||
10 | |||
11 | struct cast5_ctx { | ||
12 | u32 Km[16]; | ||
13 | u8 Kr[16]; | ||
14 | int rr; /* rr ? rounds = 12 : rounds = 16; (rfc 2144) */ | ||
15 | }; | ||
16 | |||
17 | int cast5_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int keylen); | ||
18 | |||
19 | void __cast5_encrypt(struct cast5_ctx *ctx, u8 *dst, const u8 *src); | ||
20 | void __cast5_decrypt(struct cast5_ctx *ctx, u8 *dst, const u8 *src); | ||
21 | |||
22 | #endif | ||