forked from luck/tmp_suning_uos_patched
a697690bec
Authenc works in two stages for encryption, it first encrypts and then computes an ICV. The context memory of the request is used by both operations. The problem is that when an asynchronous encryption completes, we will compute the ICV and then reread the context memory of the encryption to get the original request. It just happens that we have a buffer of 16 bytes in front of the request pointer, so ICVs of 16 bytes (such as SHA1) do not trigger the bug. However, any attempt to uses a larger ICV instantly kills the machine when the first asynchronous encryption is completed. This patch fixes this by saving the request pointer before we start the ICV computation. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> |
||
---|---|---|
.. | ||
async_tx | ||
ablkcipher.c | ||
aead.c | ||
aes_generic.c | ||
ahash.c | ||
algapi.c | ||
anubis.c | ||
api.c | ||
arc4.c | ||
authenc.c | ||
blkcipher.c | ||
blowfish.c | ||
camellia.c | ||
cast5.c | ||
cast6.c | ||
cbc.c | ||
ccm.c | ||
chainiv.c | ||
cipher.c | ||
compress.c | ||
crc32c.c | ||
cryptd.c | ||
crypto_null.c | ||
cryptomgr.c | ||
ctr.c | ||
cts.c | ||
deflate.c | ||
des_generic.c | ||
digest.c | ||
ecb.c | ||
eseqiv.c | ||
fcrypt.c | ||
gcm.c | ||
gf128mul.c | ||
hash.c | ||
hmac.c | ||
internal.h | ||
Kconfig | ||
khazad.c | ||
lrw.c | ||
lzo.c | ||
Makefile | ||
md4.c | ||
md5.c | ||
michael_mic.c | ||
pcbc.c | ||
proc.c | ||
ripemd.h | ||
rmd128.c | ||
rmd160.c | ||
rmd256.c | ||
rmd320.c | ||
salsa20_generic.c | ||
scatterwalk.c | ||
seed.c | ||
seqiv.c | ||
serpent.c | ||
sha1_generic.c | ||
sha256_generic.c | ||
sha512_generic.c | ||
tcrypt.c | ||
tcrypt.h | ||
tea.c | ||
tgr192.c | ||
twofish_common.c | ||
twofish.c | ||
wp512.c | ||
xcbc.c | ||
xor.c | ||
xts.c |