mirror of
https://github.com/torvalds/linux.git
synced 2024-11-30 16:11:38 +00:00
bd56cea012
The chelsio crypto driver is casting 'struct crypto_aead' directly to
'struct crypto_tfm', which is incorrect because the crypto_tfm isn't the
first field of 'struct crypto_aead'. Consequently, the calls to
crypto_tfm_set_flags() are modifying some other field in the struct.
Also, the driver is setting CRYPTO_TFM_RES_BAD_KEY_LEN in
->setauthsize(), not just in ->setkey(). This is incorrect since this
flag is for bad key lengths, not for bad authentication tag lengths.
Fix these bugs by removing the broken crypto_tfm_set_flags() calls from
->setauthsize() and by fixing them in ->setkey().
Fixes:
|
||
---|---|---|
.. | ||
chtls | ||
chcr_algo.c | ||
chcr_algo.h | ||
chcr_core.c | ||
chcr_core.h | ||
chcr_crypto.h | ||
chcr_ipsec.c | ||
Kconfig | ||
Makefile |