aboutsummaryrefslogtreecommitdiffstats
path: root/include/crypto
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2007-11-22 23:11:53 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2008-01-11 08:16:30 +1100
commite236d4a89a2ffbc8aa18064161f4f159c4d89b4a (patch)
tree5688f2fd39c734c10b6d1fda791a87d7a19dee3b /include/crypto
parent7ba683a6deba70251756aa5a021cdaa5c875a7a2 (diff)
downloadkernel_samsung_smdk4412-e236d4a89a2ffbc8aa18064161f4f159c4d89b4a.zip
kernel_samsung_smdk4412-e236d4a89a2ffbc8aa18064161f4f159c4d89b4a.tar.gz
kernel_samsung_smdk4412-e236d4a89a2ffbc8aa18064161f4f159c4d89b4a.tar.bz2
[CRYPTO] authenc: Move enckeylen into key itself
Having enckeylen as a template parameter makes it a pain for hardware devices that implement ciphers with many key sizes since each one would have to be registered separately. Since the authenc algorithm is mainly used for legacy purposes where its key is going to be constructed out of two separate keys, we can in fact embed this value into the key itself. This patch does this by prepending an rtnetlink header to the key that contains the encryption key length. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'include/crypto')
-rw-r--r--include/crypto/authenc.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/crypto/authenc.h b/include/crypto/authenc.h
new file mode 100644
index 0000000..e47b044
--- /dev/null
+++ b/include/crypto/authenc.h
@@ -0,0 +1,27 @@
+/*
+ * Authenc: Simple AEAD wrapper for IPsec
+ *
+ * Copyright (c) 2007 Herbert Xu <herbert@gondor.apana.org.au>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; either version 2 of the License, or (at your option)
+ * any later version.
+ *
+ */
+#ifndef _CRYPTO_AUTHENC_H
+#define _CRYPTO_AUTHENC_H
+
+#include <linux/types.h>
+
+enum {
+ CRYPTO_AUTHENC_KEYA_UNSPEC,
+ CRYPTO_AUTHENC_KEYA_PARAM,
+};
+
+struct crypto_authenc_key_param {
+ __be32 enckeylen;
+};
+
+#endif /* _CRYPTO_AUTHENC_H */
+