OpenCloudOS-Kernel/arch/arm/crypto
Ard Biesheuvel 001eabfd54 crypto: arm/aes update NEON AES module to latest OpenSSL version
This updates the bit sliced AES module to the latest version in the
upstream OpenSSL repository (e620e5ae37bc). This is needed to fix a
bug in the XTS decryption path, where data chunked in a certain way
could trigger the ciphertext stealing code, which is not supposed to
be active in the kernel build (The kernel implementation of XTS only
supports round multiples of the AES block size of 16 bytes, whereas
the conformant OpenSSL implementation of XTS supports inputs of
arbitrary size by applying ciphertext stealing). This is fixed in
the upstream version by adding the missing #ifndef XTS_CHAIN_TWEAK
around the offending instructions.

The upstream code also contains the change applied by Russell to
build the code unconditionally, i.e., even if __LINUX_ARM_ARCH__ < 7,
but implemented slightly differently.

Cc: stable@vger.kernel.org
Fixes: e4e7f10bfc ("ARM: add support for bit sliced AES using NEON instructions")
Reported-by: Adrian Kotelba <adrian.kotelba@gmail.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Milan Broz <gmazyland@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2015-03-02 23:18:26 +13:00
..
.gitignore ARM: add .gitignore entry for aesbs-core.S 2013-10-07 15:43:53 +01:00
Makefile ARM: 8120/1: crypto: sha512: add ARM NEON implementation 2014-08-02 08:51:50 +01:00
aes-armv4.S ARM: convert all "mov.* pc, reg" to "bx reg" for ARMv6+ 2014-07-18 12:29:04 +01:00
aes_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
aes_glue.h ARM: move AES typedefs and function prototypes to separate header 2013-10-04 09:26:54 +02:00
aesbs-core.S_shipped crypto: arm/aes update NEON AES module to latest OpenSSL version 2015-03-02 23:18:26 +13:00
aesbs-glue.c crypto: arm-aes - fix encryption of unaligned data 2014-07-28 22:01:03 +08:00
bsaes-armv7.pl crypto: arm/aes update NEON AES module to latest OpenSSL version 2015-03-02 23:18:26 +13:00
sha1-armv4-large.S ARM: 7723/1: crypto: sha1-armv4-large.S: fix SP handling 2013-05-22 22:01:35 +01:00
sha1-armv7-neon.S ARM: 8125/1: crypto: enable NEON SHA-1 for big endian 2014-08-27 15:44:11 +01:00
sha1_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
sha1_neon_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
sha512-armv7-neon.S ARM: 8120/1: crypto: sha512: add ARM NEON implementation 2014-08-02 08:51:50 +01:00
sha512_neon_glue.c crypto: arm - replace memset by memzero_explicit 2014-12-02 22:55:51 +08:00