linux-stable/crypto
Herbert Xu 24c890dd71 crypto: algif_hash - Remove bogus SGL free on zero-length error path
When a zero-length message is hashed by algif_hash, and an error
is triggered, it tries to free an SG list that was never allocated
in the first place.  Fix this by not freeing the SG list on the
zero-length error path.

Reported-by: Shigeru Yoshida <syoshida@redhat.com>
Reported-by: xingwei lee <xrivendell7@gmail.com>
Fixes: b6d972f689 ("crypto: af_alg/hash: Fix recvmsg() after sendmsg(MSG_MORE)")
Cc: <stable@vger.kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Reported-by: syzbot+3266db0c26d1fbbe3abb@syzkaller.appspotmail.com
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2024-02-02 18:08:12 +08:00
..
asymmetric_keys This update includes the following changes: 2023-11-02 16:15:30 -10:00
async_tx
842.c
Kconfig crypto: cfb,ofb - Remove cfb and ofb 2023-12-08 11:59:46 +08:00
Makefile crypto: cfb,ofb - Remove cfb and ofb 2023-12-08 11:59:46 +08:00
acompress.c
adiantum.c crypto: adiantum - flush destination page before unmapping 2023-11-01 12:58:42 +08:00
aead.c crypto: aead - Add crypto_has_aead 2023-09-20 13:15:29 +08:00
aegis-neon.h
aegis.h
aegis128-core.c
aegis128-neon-inner.c
aegis128-neon.c
aes_generic.c
aes_ti.c
af_alg.c crypto: af_alg - Disallow multiple in-flight AIO requests 2023-12-08 11:59:44 +08:00
ahash.c crypto: ahash - Set using_shash for cloned ahash wrapper over shash 2023-11-07 16:44:36 +08:00
akcipher.c crypto: akcipher - Do not copy dst if it is NULL 2023-06-27 17:59:52 +08:00
algapi.c crypto: api - Disallow identical driver names 2023-12-15 17:52:53 +08:00
algboss.c
algif_aead.c sock: Remove ->sendpage*() in favour of sendmsg(MSG_SPLICE_PAGES) 2023-06-24 15:50:13 -07:00
algif_hash.c crypto: algif_hash - Remove bogus SGL free on zero-length error path 2024-02-02 18:08:12 +08:00
algif_rng.c sock: Remove ->sendpage*() in favour of sendmsg(MSG_SPLICE_PAGES) 2023-06-24 15:50:13 -07:00
algif_skcipher.c crypto: algif_skcipher - Fix stream cipher chaining 2023-12-08 11:59:46 +08:00
ansi_cprng.c
anubis.c
api.c crypto: api - Remove unnecessary NULL initialisation 2023-09-20 13:15:29 +08:00
arc4.c crypto: arc4 - Add internal state 2023-12-08 11:59:46 +08:00
aria_generic.c
authenc.c crypto: authenc - stop using alignmask of ahash 2023-10-27 18:04:29 +08:00
authencesn.c crypto: authencesn - stop using alignmask of ahash 2023-10-27 18:04:29 +08:00
blake2b_generic.c
blowfish_common.c
blowfish_generic.c
camellia_generic.c
cast5_generic.c
cast6_generic.c
cast_common.c
cbc.c crypto: cbc - Ensure statesize is zero 2024-02-02 18:08:12 +08:00
ccm.c crypto: ccm - stop using alignmask of ahash 2023-10-27 18:04:29 +08:00
chacha20poly1305.c crypto: chacha20poly1305 - stop using alignmask of ahash 2023-10-27 18:04:29 +08:00
chacha_generic.c
cipher.c crypto: cipher - On clone do crypto_mod_get() 2023-06-23 16:15:36 +08:00
cmac.c crypto: cmac - remove unnecessary alignment logic 2023-10-27 18:04:24 +08:00
compress.c
compress.h
crc32_generic.c
crc32c_generic.c
crc64_rocksoft_generic.c
crct10dif_common.c
crct10dif_generic.c
cryptd.c crypto: cryptd - Only access common skcipher fields on spawn 2023-10-13 18:27:26 +08:00
crypto_engine.c crypto: engine - Make crypto_engine_exit() return void 2023-10-01 16:28:15 +08:00
crypto_null.c
crypto_user_base.c
crypto_user_stat.c
ctr.c crypto: ctr - Only access common skcipher fields on spawn 2023-10-13 18:27:27 +08:00
cts.c crypto: cts - Only access common skcipher fields on spawn 2023-10-13 18:27:27 +08:00
curve25519-generic.c
deflate.c crypto: deflate - Remove zlib-deflate 2023-10-12 21:59:32 +08:00
des_generic.c
dh.c
dh_helper.c
drbg.c crypto: drbg - Remove SHA1 from drbg 2023-11-17 19:16:29 +08:00
ecb.c crypto: skcipher - Add internal state support 2023-12-08 11:59:46 +08:00
ecc.c
ecc_curve_defs.h
ecdh.c
ecdh_helper.c
ecdsa.c
ecdsasignature.asn1
echainiv.c
ecrdsa.c
ecrdsa_defs.h
ecrdsa_params.asn1
ecrdsa_pub_key.asn1
essiv.c crypto: essiv - Handle lskcipher spawns 2023-10-13 18:27:26 +08:00
fcrypt.c
fips.c
gcm.c crypto: gcm - stop using alignmask of ahash 2023-10-27 18:04:29 +08:00
geniv.c
ghash-generic.c
hash.h crypto: ahash - optimize performance when wrapping shash 2023-10-27 18:04:30 +08:00
hash_info.c crypto: FIPS 202 SHA-3 register in hash info for IMA 2023-10-27 18:04:30 +08:00
hctr2.c crypto: hctr2 - stop using alignmask of shash_alg 2023-10-27 18:04:25 +08:00
hmac.c crypto: hmac - remove unnecessary alignment logic 2023-10-27 18:04:24 +08:00
internal.h crypto: sig - Fix verify call 2023-06-27 15:40:24 +08:00
jitterentropy-kcapi.c crypto: jitter - reuse allocated entropy collector 2023-10-13 18:31:07 +08:00
jitterentropy-testing.c
jitterentropy.c crypto: jitter - use permanent health test storage 2023-10-27 18:04:25 +08:00
jitterentropy.h crypto: jitter - reuse allocated entropy collector 2023-10-13 18:31:07 +08:00
kdf_sp800108.c
keywrap.c
khazad.c
kpp.c
lrw.c crypto: lrw - Only access common skcipher fields on spawn 2023-10-13 18:27:27 +08:00
lskcipher.c crypto: skcipher - Pass statesize for simple lskcipher instances 2023-12-22 12:30:19 +08:00
lz4.c
lz4hc.c
lzo-rle.c
lzo.c
md4.c
md5.c
michael_mic.c
nhpoly1305.c
pcbc.c
pcrypt.c crypto: pcrypt - Fix hungtask for PADATA_RESET 2023-09-15 18:29:45 +08:00
poly1305_generic.c
polyval-generic.c
proc.c
ripemd.h
rmd160.c
rng.c
rsa-pkcs1pad.c crypto: rsa-pkcs1pad - Add FIPS 202 SHA-3 support 2023-10-27 18:04:30 +08:00
rsa.c crypto: rsa - add a check for allocation failure 2023-11-17 19:16:29 +08:00
rsa_helper.c
rsaprivkey.asn1 treewide: Add SPDX identifier to IETF ASN.1 modules 2023-10-27 18:04:28 +08:00
rsapubkey.asn1 treewide: Add SPDX identifier to IETF ASN.1 modules 2023-10-27 18:04:28 +08:00
scatterwalk.c
scompress.c crypto: scomp - fix req->dst buffer overflow 2023-12-29 11:25:56 +08:00
seed.c
seqiv.c
serpent_generic.c
sha1_generic.c
sha3_generic.c
sha256_generic.c
sha512_generic.c
shash.c crypto: shash - don't exclude async statuses from error stats 2023-11-17 19:16:29 +08:00
sig.c crypto: sig - Remove some unused functions 2023-07-20 22:15:12 +12:00
simd.c
skcipher.c crypto: skcipher - Make use of internal state 2023-12-08 11:59:46 +08:00
skcipher.h crypto: skcipher - fix weak key check for lskciphers 2023-10-20 13:39:26 +08:00
sm2.c crypto: sm2 - Fix crash caused by uninitialized context 2023-09-20 13:10:10 +08:00
sm2signature.asn1
sm3.c
sm3_generic.c
sm4.c
sm4_generic.c
streebog_generic.c
tcrypt.c crypto: tcrypt - Remove cfb and ofb 2023-12-08 11:59:46 +08:00
tcrypt.h
tea.c
testmgr.c crypto: iaa - Add support for deflate-iaa compression algorithm 2023-12-15 17:52:53 +08:00
testmgr.h crypto: testmgr - Remove cfb and ofb 2023-12-08 11:59:46 +08:00
twofish_common.c
twofish_generic.c
vmac.c crypto: vmac - don't set alignmask 2023-10-27 18:04:24 +08:00
wp512.c
xcbc.c crypto: xcbc - remove unnecessary alignment logic 2023-10-27 18:04:25 +08:00
xctr.c
xor.c
xts.c crypto: xts - use 'spawn' for underlying single-block cipher 2023-10-20 13:39:25 +08:00
xxhash_generic.c
zstd.c