diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-15 12:35:19 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-15 12:35:19 -0800 |
commit | 1ed55eac3b1fc30b29cdb52251e0f13b24fc344c (patch) | |
tree | b7a4c67f2e29f8aa418708c5da871e64c511f3ff /include | |
parent | 08242bc2210938761230f79c5288dbcf72e94808 (diff) | |
parent | a2c0911c09190125f52c9941b9d187f601c2f7be (diff) | |
download | linux-1ed55eac3b1fc30b29cdb52251e0f13b24fc344c.tar.bz2 |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull crypto update from Herbert Xu:
- Added aesni/avx/x86_64 implementations for camellia.
- Optimised AVX code for cast5/serpent/twofish/cast6.
- Fixed vmac bug with unaligned input.
- Allow compression algorithms in FIPS mode.
- Optimised crc32c implementation for Intel.
- Misc fixes.
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (32 commits)
crypto: caam - Updated SEC-4.0 device tree binding for ERA information.
crypto: testmgr - remove superfluous initializers for xts(aes)
crypto: testmgr - allow compression algs in fips mode
crypto: testmgr - add larger crc32c test vector to test FPU path in crc32c_intel
crypto: testmgr - clean alg_test_null entries in alg_test_descs[]
crypto: testmgr - remove fips_allowed flag from camellia-aesni null-tests
crypto: cast5/cast6 - move lookup tables to shared module
padata: use __this_cpu_read per-cpu helper
crypto: s5p-sss - Fix compilation error
crypto: picoxcell - Add terminating entry for platform_device_id table
crypto: omap-aes - select BLKCIPHER2
crypto: camellia - add AES-NI/AVX/x86_64 assembler implementation of camellia cipher
crypto: camellia-x86_64 - share common functions and move structures and function definitions to header file
crypto: tcrypt - add async speed test for camellia cipher
crypto: tegra-aes - fix error-valued pointer dereference
crypto: tegra - fix missing unlock on error case
crypto: cast5/avx - avoid using temporary stack buffers
crypto: serpent/avx - avoid using temporary stack buffers
crypto: twofish/avx - avoid using temporary stack buffers
crypto: cast6/avx - avoid using temporary stack buffers
...
Diffstat (limited to 'include')
-rw-r--r-- | include/crypto/cast5.h | 6 | ||||
-rw-r--r-- | include/crypto/cast6.h | 6 | ||||
-rw-r--r-- | include/crypto/cast_common.h | 9 | ||||
-rw-r--r-- | include/crypto/vmac.h | 2 |
4 files changed, 13 insertions, 10 deletions
diff --git a/include/crypto/cast5.h b/include/crypto/cast5.h index 586183a0406e..14fbf39d6380 100644 --- a/include/crypto/cast5.h +++ b/include/crypto/cast5.h @@ -3,6 +3,7 @@ #include <linux/types.h> #include <linux/crypto.h> +#include <crypto/cast_common.h> #define CAST5_BLOCK_SIZE 8 #define CAST5_MIN_KEY_SIZE 5 @@ -19,9 +20,4 @@ int cast5_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int keylen); void __cast5_encrypt(struct cast5_ctx *ctx, u8 *dst, const u8 *src); void __cast5_decrypt(struct cast5_ctx *ctx, u8 *dst, const u8 *src); -extern const u32 cast5_s1[256]; -extern const u32 cast5_s2[256]; -extern const u32 cast5_s3[256]; -extern const u32 cast5_s4[256]; - #endif diff --git a/include/crypto/cast6.h b/include/crypto/cast6.h index 157af6f342c8..32b60eb8bd24 100644 --- a/include/crypto/cast6.h +++ b/include/crypto/cast6.h @@ -3,6 +3,7 @@ #include <linux/types.h> #include <linux/crypto.h> +#include <crypto/cast_common.h> #define CAST6_BLOCK_SIZE 16 #define CAST6_MIN_KEY_SIZE 16 @@ -20,9 +21,4 @@ int cast6_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int keylen); void __cast6_encrypt(struct cast6_ctx *ctx, u8 *dst, const u8 *src); void __cast6_decrypt(struct cast6_ctx *ctx, u8 *dst, const u8 *src); -extern const u32 cast6_s1[256]; -extern const u32 cast6_s2[256]; -extern const u32 cast6_s3[256]; -extern const u32 cast6_s4[256]; - #endif diff --git a/include/crypto/cast_common.h b/include/crypto/cast_common.h new file mode 100644 index 000000000000..b7df35cd9f0a --- /dev/null +++ b/include/crypto/cast_common.h @@ -0,0 +1,9 @@ +#ifndef _CRYPTO_CAST_COMMON_H +#define _CRYPTO_CAST_COMMON_H + +extern const u32 cast_s1[256]; +extern const u32 cast_s2[256]; +extern const u32 cast_s3[256]; +extern const u32 cast_s4[256]; + +#endif diff --git a/include/crypto/vmac.h b/include/crypto/vmac.h index c4467c55df1e..6b700c7b2fe1 100644 --- a/include/crypto/vmac.h +++ b/include/crypto/vmac.h @@ -56,6 +56,8 @@ typedef u64 vmac_t; struct vmac_ctx_t { struct crypto_cipher *child; struct vmac_ctx __vmac_ctx; + u8 partial[VMAC_NHBYTES]; /* partial block */ + int partial_size; /* size of the partial block */ }; #endif /* __CRYPTO_VMAC_H */ |