android_kernel_xiaomi_sm8350/crypto
Joy Latten 2f40a178e7 [CRYPTO] xcbc: Fix crash with IPsec
When using aes-xcbc-mac for authentication in IPsec, 
the kernel crashes. It seems this algorithm doesn't 
account for the space IPsec may make in scatterlist for authtag.
Thus when crypto_xcbc_digest_update2() gets called,
nbytes may be less than sg[i].length. 
Since nbytes is an unsigned number, it wraps
at the end of the loop allowing us to go back 
into loop and causing crash in memcpy.

I used update function in digest.c to model this fix.
Please let me know if it looks ok.

Signed-off-by: Joy Latten <latten@austin.ibm.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2008-03-06 19:28:44 +08:00
..
async_tx async_tx: allow architecture specific async_tx_find_channel implementations 2008-02-06 10:12:18 -07:00
ablkcipher.c [CRYPTO] skcipher: Move chainiv/seqiv into crypto_blkcipher module 2008-02-23 11:12:06 +08:00
aead.c [CRYPTO] api: Show async type 2008-01-11 08:16:56 +11:00
aes_generic.c [CRYPTO] aes-generic: Make key generation exportable 2008-01-11 08:16:09 +11:00
algapi.c [CRYPTO] api: Add crypto_attr_alg_name 2008-01-11 08:16:40 +11:00
anubis.c
api.c [CRYPTO] skcipher: Create default givcipher instances 2008-01-11 08:16:46 +11:00
arc4.c
authenc.c [CRYPTO] authenc: Add givencrypt operation 2008-01-11 08:16:50 +11:00
blkcipher.c [CRYPTO] skcipher: Move chainiv/seqiv into crypto_blkcipher module 2008-02-23 11:12:06 +08:00
blowfish.c
camellia.c [CRYPTO] camellia: Move more common code into camellia_setup_tail 2008-01-11 08:16:22 +11:00
cast5.c
cast6.c [CRYPTO] cast6: inline bloat-- 2008-01-11 08:17:02 +11:00
cbc.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
ccm.c [CRYPTO] ccm: Added CCM mode 2008-01-11 08:16:53 +11:00
chainiv.c [CRYPTO] skcipher: Move chainiv/seqiv into crypto_blkcipher module 2008-02-23 11:12:06 +08:00
cipher.c
compress.c
crc32c.c
cryptd.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
crypto_null.c [CRYPTO] null: Allow setkey on digest_null 2008-01-11 08:16:54 +11:00
cryptomgr.c
ctr.c [CRYPTO] seqiv: Add Sequence Number IV Generator 2008-01-11 08:16:48 +11:00
deflate.c
des_generic.c [CRYPTO] hifn_795x: Detect weak keys 2008-01-11 08:16:03 +11:00
digest.c [CRYPTO] digest: Include internal.h for prototypes 2008-03-05 19:05:54 +08:00
ecb.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
eseqiv.c [CRYPTO] skcipher: Move chainiv/seqiv into crypto_blkcipher module 2008-02-23 11:12:06 +08:00
fcrypt.c
gcm.c [CRYPTO] gcm: Introduce rfc4106 2008-01-11 08:16:56 +11:00
gf128mul.c
hash.c
hmac.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
internal.h [CRYPTO] skcipher: Create default givcipher instances 2008-01-11 08:16:46 +11:00
Kconfig [CRYPTO] authenc: Add missing Kconfig dependency on BLKCIPHER 2008-02-23 11:13:00 +08:00
khazad.c
lrw.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
lzo.c [CRYPTO] lzo: Add LZO compression algorithm support 2008-01-11 08:16:35 +11:00
Makefile [CRYPTO] skcipher: Move chainiv/seqiv into crypto_blkcipher module 2008-02-23 11:12:06 +08:00
md4.c
md5.c
michael_mic.c
pcbc.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
proc.c
salsa20_generic.c [CRYPTO] salsa20_generic: Fix multi-page processing 2008-01-11 08:16:34 +11:00
scatterwalk.c [CRYPTO] scatterwalk: Handle zero nbytes in scatterwalk_map_and_copy 2008-01-11 08:16:54 +11:00
seed.c
seqiv.c [CRYPTO] seqiv: Add AEAD support 2008-01-11 08:16:52 +11:00
serpent.c
sha1_generic.c
sha256_generic.c [CRYPTO] sha256-generic: Extend sha256_generic.c to support SHA-224 2008-01-11 08:16:12 +11:00
sha512.c
tcrypt.c [CRYPTO] tcrypt: Make xcbc available as a standalone test 2008-01-11 08:17:01 +11:00
tcrypt.h [CRYPTO] tcrypt: Add CCM vectors 2008-01-11 08:16:53 +11:00
tea.c
tgr192.c
twofish_common.c [CRYPTO] twofish: Do not unroll big stuff in twofish key setup 2008-01-11 08:16:06 +11:00
twofish.c
wp512.c
xcbc.c [CRYPTO] xcbc: Fix crash with IPsec 2008-03-06 19:28:44 +08:00
xor.c
xts.c [CRYPTO] xts: Use proper alignment 2008-03-06 18:56:19 +08:00