Herbert Xu
70957a10e1
crypto: af_alg - Work around empty control messages without MSG_MORE
...
commit c195d66a8a75c60515819b101975f38b7ec6577f upstream.
The iwd daemon uses libell which sets up the skcipher operation with
two separate control messages. As the first control message is sent
without MSG_MORE, it is interpreted as an empty request.
While libell should be fixed to use MSG_MORE where appropriate, this
patch works around the bug in the kernel so that existing binaries
continue to work.
We will print a warning however.
A separate issue is that the new kernel code no longer allows the
control message to be sent twice within the same request. This
restriction is obviously incompatible with what iwd was doing (first
setting an IV and then sending the real control message). This
patch changes the kernel so that this is explicitly allowed.
Reported-by: Caleb Jorden <caljorden@hotmail.com>
Fixes: f3c802a1f300 ("crypto: algif_aead - Only wake up when...")
Cc: <stable@vger.kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-09-03 11:27:05 +02:00
..
asymmetric_keys
keys: asymmetric: fix error return code in software_key_query()
2020-07-22 09:33:04 +02:00
async_tx
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335
2019-06-05 17:37:06 +02:00
842.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157
2019-05-30 11:26:37 -07:00
ablkcipher.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
acompress.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
adiantum.c
crypto: shash - remove shash_desc::flags
2019-04-25 15:38:12 +08:00
aead.c
crypto: aead - Do not allow authsize=0 if auth. alg has digestsize>0
2019-08-15 21:52:14 +10:00
aegis.h
crypto: aegis128 - Fix -Wunused-const-variable warning
2019-08-30 18:05:30 +10:00
aegis128-core.c
crypto: aegis128 - Fix -Wunused-const-variable warning
2019-08-30 18:05:30 +10:00
aegis128-neon-inner.c
crypto: arm64/aegis128 - use explicit vector load for permute vectors
2019-08-30 18:05:27 +10:00
aegis128-neon.c
crypto: arm64/aegis128 - implement plain NEON version
2019-08-15 21:52:15 +10:00
aes_generic.c
crypto: aes-generic - remove unused variable 'rco_tab'
2019-08-15 21:52:14 +10:00
aes_ti.c
crypto: aes - create AES library based on the fixed time AES code
2019-07-26 14:55:33 +10:00
af_alg.c
crypto: af_alg - Work around empty control messages without MSG_MORE
2020-09-03 11:27:05 +02:00
ahash.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
akcipher.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
algapi.c
crypto: algapi - Avoid spurious modprobe on LOADED
2020-06-17 16:40:30 +02:00
algboss.c
crypto: algboss - don't wait during notifier callback
2020-06-24 17:50:51 +02:00
algif_aead.c
crypto: algif_aead - fix uninitialized ctx->init
2020-08-21 13:05:38 +02:00
algif_hash.c
crypto: af_alg - fix use-after-free in af_alg_accept() due to bh_lock_sock()
2020-07-09 09:37:52 +02:00
algif_rng.c
algif_skcipher.c
crypto: algif_aead - fix uninitialized ctx->init
2020-08-21 13:05:38 +02:00
ansi_cprng.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 42
2019-05-24 17:27:12 +02:00
anubis.c
crypto: make all generic algorithms set cra_driver_name
2019-06-13 14:31:39 +08:00
api.c
crypto: api - Fix race condition in crypto_spawn_alg
2020-02-11 04:35:31 -08:00
arc4.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
authenc.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
authencesn.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
blkcipher.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
blowfish_common.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
blowfish_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
camellia_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13
2019-05-21 11:28:45 +02:00
cast5_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 140
2019-05-30 11:25:16 -07:00
cast6_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 140
2019-05-30 11:25:16 -07:00
cast_common.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 44
2019-05-24 17:27:12 +02:00
cbc.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
ccm.c
wusb: switch to cbcmac transform
2019-06-18 08:52:34 +02:00
cfb.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
chacha20poly1305.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
chacha_generic.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
cipher.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
cmac.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
compress.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
crc32_generic.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
crc32c_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
crct10dif_common.c
crct10dif_generic.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
cryptd.c
crypto: cryptd - Use refcount_t for refcount
2019-08-15 21:52:13 +10:00
crypto_engine.c
crypto: engine - Reduce default RT priority
2019-08-09 15:11:52 +10:00
crypto_null.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
crypto_user_base.c
crypto: user - fix memory leak in crypto_report
2019-12-13 08:43:10 +01:00
crypto_user_stat.c
crypto: user - fix memory leak in crypto_reportstat
2019-12-13 08:43:11 +01:00
ctr.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
cts.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
deflate.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
des_generic.c
crypto: des - remove now unused __des3_ede_setkey()
2019-08-22 14:57:33 +10:00
dh.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
dh_helper.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
drbg.c
crypto: drbg - fix error return code in drbg_alloc_state()
2020-06-17 16:40:31 +02:00
ecb.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
ecc.c
crypto: ecdh - fix big endian bug in ECC library
2019-12-13 08:43:09 +01:00
ecc.h
crypto: ecrdsa - add EC-RDSA (GOST 34.10) algorithm
2019-04-18 22:15:02 +08:00
ecc_curve_defs.h
crypto: ecc - make ecc into separate module
2019-04-18 22:15:02 +08:00
ecdh.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
ecdh_helper.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
echainiv.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
ecrdsa.c
crypto: ecrdsa - add EC-RDSA (GOST 34.10) algorithm
2019-04-18 22:15:02 +08:00
ecrdsa_defs.h
crypto: ecrdsa - add EC-RDSA (GOST 34.10) algorithm
2019-04-18 22:15:02 +08:00
ecrdsa_params.asn1
crypto: ecrdsa - add EC-RDSA (GOST 34.10) algorithm
2019-04-18 22:15:02 +08:00
ecrdsa_pub_key.asn1
crypto: ecrdsa - add EC-RDSA (GOST 34.10) algorithm
2019-04-18 22:15:02 +08:00
essiv.c
crypto: essiv - create wrapper template for ESSIV generation
2019-09-03 16:44:57 -04:00
fcrypt.c
crypto: make all generic algorithms set cra_driver_name
2019-06-13 14:31:39 +08:00
fips.c
crypto: fips - add FIPS test failure notification chain
2019-07-26 14:51:57 +10:00
gcm.c
crypto: gcm - restrict assoclen for rfc4543
2019-08-09 15:11:58 +10:00
gf128mul.c
ghash-generic.c
crypto: ghash - add comment and improve help text
2019-07-27 21:08:38 +10:00
hash_info.c
crypto: rename sm3-256 to sm3 in hash_algo_name
2020-02-28 17:22:26 +01:00
hmac.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-06-06 13:10:49 -07:00
internal.h
crypto: api - Fix race condition in crypto_spawn_alg
2020-02-11 04:35:31 -08:00
jitterentropy-kcapi.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-06-20 14:17:24 +08:00
jitterentropy.c
crypto: jitter - update implementation to 2.1.2
2019-06-06 14:38:57 +08:00
Kconfig
crypto: essiv - fix AEAD capitalization and preposition use in help text
2020-02-24 08:36:50 +01:00
keywrap.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
khazad.c
crypto: make all generic algorithms set cra_driver_name
2019-06-13 14:31:39 +08:00
kpp.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
lrw.c
gcc-10: avoid shadowing standard library 'free()' in crypto
2020-05-20 08:20:29 +02:00
lz4.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
lz4hc.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
lzo-rle.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
lzo.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
Makefile
crypto: aegis128-neon - use Clang compatible cflags for ARM
2019-12-31 16:43:38 +01:00
md4.c
crypto: make all generic algorithms set cra_driver_name
2019-06-13 14:31:39 +08:00
md5.c
crypto: make all generic algorithms set cra_driver_name
2019-06-13 14:31:39 +08:00
memneq.c
michael_mic.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
nhpoly1305.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
ofb.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
pcbc.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
pcrypt.c
crypto: pcrypt - Do not clear MAY_SLEEP flag in original request
2020-02-11 04:35:31 -08:00
poly1305_generic.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
proc.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
ripemd.h
rmd128.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
rmd160.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
rmd256.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
rmd320.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
rng.c
crypto: rng - Fix a refcounting bug in crypto_rng_reset()
2020-04-17 10:50:16 +02:00
rsa-pkcs1pad.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
rsa.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
rsa_helper.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
rsaprivkey.asn1
rsapubkey.asn1
salsa20_generic.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
scatterwalk.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
scompress.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
seed.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
seqiv.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
serpent_generic.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
sha1_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
sha3_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
sha256_generic.c
crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h
2019-09-05 14:54:54 +10:00
sha512_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 45
2019-05-24 17:27:12 +02:00
shash.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
simd.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13
2019-05-21 11:28:45 +02:00
skcipher.c
crypto: skcipher - Unmap pages after an external error
2019-09-09 17:35:27 +10:00
sm3_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234
2019-06-19 17:09:07 +02:00
sm4_generic.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
streebog_generic.c
crypto: streebog - remove two unused variables
2019-08-15 21:52:14 +10:00
tcrypt.c
crypto: essiv - add tests for essiv in cbc(aes)+sha256 mode
2019-08-30 18:05:27 +10:00
tcrypt.h
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
tea.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
testmgr.c
crypto: testmgr - don't try to decrypt uninitialized buffers
2020-02-14 16:34:18 -05:00
testmgr.h
crypto: essiv - add tests for essiv in cbc(aes)+sha256 mode
2019-08-30 18:05:27 +10:00
tgr192.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00
twofish_common.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13
2019-05-21 11:28:45 +02:00
twofish_generic.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13
2019-05-21 11:28:45 +02:00
vmac.c
crypto: run initcalls for generic implementations earlier
2019-04-18 22:15:03 +08:00
wp512.c
crypto: make all generic algorithms set cra_driver_name
2019-06-13 14:31:39 +08:00
xcbc.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13
2019-05-21 11:28:45 +02:00
xor.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 47
2019-05-24 17:27:13 +02:00
xts.c
gcc-10: avoid shadowing standard library 'free()' in crypto
2020-05-20 08:20:29 +02:00
xxhash_generic.c
crypto: xxhash - Implement xxhash support
2019-06-06 14:38:57 +08:00
zstd.c
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2019-07-08 20:57:08 -07:00