summaryrefslogtreecommitdiff
path: root/include/crypto/aes.h
diff options
context:
space:
mode:
authorSebastian Siewior <sebastian@breakpoint.cc>2008-04-01 20:58:51 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2008-04-21 10:19:34 +0800
commit5427663f498e19b441277de72ce7a685511f247c (patch)
treecaebca4d656c8028780bf1d692dd325704332225 /include/crypto/aes.h
parentc3715cb90f722b1cf5f6f073be02cc8a49659b90 (diff)
downloadlwn-5427663f498e19b441277de72ce7a685511f247c.tar.gz
lwn-5427663f498e19b441277de72ce7a685511f247c.zip
[CRYPTO] aes: Export generic setkey
The key expansion routine could be get little more generic, become a kernel doc entry and then get exported. Signed-off-by: Sebastian Siewior <sebastian@breakpoint.cc> Tested-by: Stefan Hellermann <stefan@the2masters.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto/aes.h')
-rw-r--r--include/crypto/aes.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/crypto/aes.h b/include/crypto/aes.h
index d480b76715a8..40008d67ee3d 100644
--- a/include/crypto/aes.h
+++ b/include/crypto/aes.h
@@ -14,11 +14,13 @@
#define AES_KEYSIZE_192 24
#define AES_KEYSIZE_256 32
#define AES_BLOCK_SIZE 16
+#define AES_MAX_KEYLENGTH (15 * 16)
+#define AES_MAX_KEYLENGTH_U32 (AES_MAX_KEYLENGTH / sizeof(u32))
struct crypto_aes_ctx {
u32 key_length;
- u32 key_enc[60];
- u32 key_dec[60];
+ u32 key_enc[AES_MAX_KEYLENGTH_U32];
+ u32 key_dec[AES_MAX_KEYLENGTH_U32];
};
extern u32 crypto_ft_tab[4][256];
@@ -28,4 +30,6 @@ extern u32 crypto_il_tab[4][256];
int crypto_aes_set_key(struct crypto_tfm *tfm, const u8 *in_key,
unsigned int key_len);
+int crypto_aes_expand_key(struct crypto_aes_ctx *ctx, const u8 *in_key,
+ unsigned int key_len);
#endif