Herbert Xu
a697690bec
crypto: authenc - Avoid using clobbered request pointer
...
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 <[email protected] >
2008-08-23 01:04:06 +10:00
..
async_tx
async_tx: fix missing braces in async_xor_zero_sum
2008-08-05 10:25:20 -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: Export generic setkey
2008-04-21 10:19:34 +08:00
ahash.c
crypto: hash - Added scatter list walking helper
2008-07-10 20:35:18 +08:00
algapi.c
[CRYPTO] api: Add crypto_attr_alg_name
2008-01-11 08:16:40 +11:00
anubis.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
api.c
[CRYPTO] hash: Add asynchronous hash support
2008-07-10 20:35:13 +08:00
arc4.c
authenc.c
crypto: authenc - Avoid using clobbered request pointer
2008-08-23 01:04:06 +10:00
blkcipher.c
[CRYPTO] skcipher: Move chainiv/seqiv into crypto_blkcipher module
2008-02-23 11:12:06 +08:00
blowfish.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
camellia.c
crypto: camellia - Use kernel-provided bitops, unaligned access helpers
2008-07-10 20:35:17 +08:00
cast5.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
cast6.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08: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: chainiv - Invoke completion function
2008-07-10 20:34:38 +08:00
cipher.c
[CRYPTO] api: Add missing headers for setkey_unaligned
2007-10-10 16:55:40 -07:00
compress.c
cleanup asm/scatterlist.h includes
2007-11-02 08:47:06 +01:00
crc32c.c
crypto: crc32c - Add ahash implementation
2008-07-10 20:35:18 +08:00
cryptd.c
crypto: hash - Move ahash functions into crypto/hash.h
2008-07-10 20:35:18 +08:00
crypto_null.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
cryptomgr.c
[CRYPTO] cryptomgr: Fix parsing of recursive algorithms
2007-10-10 16:55:45 -07:00
ctr.c
[CRYPTO] seqiv: Add Sequence Number IV Generator
2008-01-11 08:16:48 +11:00
cts.c
[CRYPTO] cts: Init SG tables
2008-06-02 15:46:51 +10:00
deflate.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
des_generic.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
digest.c
crypto: hash - Fix digest size check for digest type
2008-08-13 20:08:38 +10: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] eseqiv: Fix off-by-one encryption
2008-05-01 18:22:28 +08:00
fcrypt.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
gcm.c
[CRYPTO] gcm: Introduce rfc4106
2008-01-11 08:16:56 +11:00
gf128mul.c
[CRYPTO] xts: XTS blockcipher mode implementation without partial blocks
2007-10-10 16:55:45 -07:00
hash.c
crypto: hash - Move ahash functions into crypto/hash.h
2008-07-10 20:35:18 +08:00
hmac.c
crypto: hash - Fixed digest size check
2008-07-10 20:35:17 +08:00
internal.h
[CRYPTO] hash: Add asynchronous hash support
2008-07-10 20:35:13 +08:00
Kconfig
Revert crypto: prng - Deterministic CPRNG
2008-07-15 23:46:24 +08:00
khazad.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
lrw.c
[CRYPTO] lrw: Replace all adds to big endians variables with be*_add_cpu
2008-04-21 10:19:22 +08:00
lzo.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
Makefile
Revert crypto: prng - Deterministic CPRNG
2008-07-15 23:46:24 +08:00
md4.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
md5.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
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
[CRYPTO] api: Constify function pointer tables
2008-04-21 10:19:22 +08:00
ripemd.h
[CRYPTO] ripemd: Put all common RIPEMD values in header file
2008-07-10 20:35:12 +08:00
rmd128.c
crypto: rmd128 - sparse annotations
2008-07-10 20:35:17 +08:00
rmd160.c
crypto: rmd - sparse annotations
2008-07-10 20:35:17 +08:00
rmd256.c
crypto: rmd - sparse annotations
2008-07-10 20:35:17 +08:00
rmd320.c
crypto: rmd - sparse annotations
2008-07-10 20:35:17 +08:00
salsa20_generic.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
scatterwalk.c
[CRYPTO] scatterwalk: Handle zero nbytes in scatterwalk_map_and_copy
2008-01-11 08:16:54 +11:00
seed.c
[CRYPTO] seed: New cipher algorithm
2007-10-10 16:55:38 -07:00
seqiv.c
[CRYPTO] seqiv: Add AEAD support
2008-01-11 08:16:52 +11:00
serpent.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
sha1_generic.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
sha256_generic.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
sha512_generic.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
tcrypt.c
crypto: tcrypt - Fix AEAD chunk testing
2008-08-13 20:08:36 +10:00
tcrypt.h
[CRYPTO] tcrypt: Add self test for des3_ebe cipher operating in cbc mode
2008-07-10 20:35:16 +08:00
tea.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
tgr192.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
twofish.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
twofish_common.c
[CRYPTO] twofish: Do not unroll big stuff in twofish key setup
2008-01-11 08:16:06 +11:00
wp512.c
[CRYPTO] all: Clean up init()/fini()
2008-04-21 10:19:34 +08:00
xcbc.c
[CRYPTO] xcbc: Fix crash when ipsec uses xcbc-mac with big data chunk
2008-04-02 14:36:09 +08:00
xor.c
xts.c
[CRYPTO] xts: Use proper alignment
2008-03-06 18:56:19 +08:00