OrangePi_CM5/drivers/crypto
Dan Carpenter 3a720eb890 crypto: cavium - prevent integer overflow loading firmware
[ Upstream commit 2526d6bf27d15054bb0778b2f7bc6625fd934905 ]

The "code_length" value comes from the firmware file.  If your firmware
is untrusted realistically there is probably very little you can do to
protect yourself.  Still we try to limit the damage as much as possible.
Also Smatch marks any data read from the filesystem as untrusted and
prints warnings if it not capped correctly.

The "ntohl(ucode->code_length) * 2" multiplication can have an
integer overflow.

Fixes: 9e2c7d9994 ("crypto: cavium - Add Support for Octeon-tx CPT Engine")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-10-26 13:25:43 +02:00
..
allwinner crypto: sun8i-ss - fix infinite loop in sun8i_ss_setup_ivs() 2022-08-21 15:15:40 +02:00
amcc crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd 2020-12-30 11:53:17 +01:00
amlogic crypto: amlogic - call finalize with bh disabled 2022-04-08 14:40:01 +02:00
axis treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
bcm crypto: bcm - Rename struct device_private to bcm_device_private 2021-03-04 11:37:40 +01:00
caam crypto: caam - fix i.MX6SX entropy delay value 2022-06-06 08:42:43 +02:00
cavium crypto: cavium - prevent integer overflow loading firmware 2022-10-26 13:25:43 +02:00
ccp crypto: ccp - Release dma channels before dmaengine unrgister 2022-10-26 13:25:42 +02:00
ccree crypto: ccree - use fine grained DMA mapping dir 2022-06-09 10:20:57 +02:00
chelsio crypto: chelsio - Read rxchannel-id from firmware 2021-05-14 09:50:19 +02:00
hisilicon crypto: hisilicon/zip - fix mismatch in get/set sgl_sge_nr 2022-10-26 13:25:41 +02:00
inside-secure crypto: inside-secure - Change swab to swab32 2022-10-26 13:25:42 +02:00
marvell crypto: marvell/octeontx - prevent integer overflows 2022-10-26 13:25:43 +02:00
mediatek crypto: mediatek - simplify the return expression of mtk_dfe_dse_reset() 2020-10-02 18:02:10 +10:00
nx powerpc/powernv/vas: Assign real address to rx_fifo in vas_rx_win_attr 2022-06-09 10:20:58 +02:00
qat crypto: qat - fix DMA transfer direction 2022-10-26 13:25:42 +02:00
qce crypto: qce - fix uaf on qce_skcipher_register_one 2022-01-27 10:53:49 +01:00
rockchip crypto: rockchip - ECB does not need IV 2022-04-08 14:40:00 +02:00
stm32 crypto: stm32 - fix reference leak in stm32_crc_remove 2022-05-25 09:17:53 +02:00
ux500 crypto: ux500 - Fix error return code in hash_hw_final() 2021-07-14 16:56:03 +02:00
virtio crypto: virtio - don't use 'default m' 2020-08-21 14:47:50 +10:00
vmx crypto: vmx - add missing dependencies 2022-04-08 14:40:01 +02:00
xilinx crypto: algapi - Remove skbuff.h inclusion 2020-08-20 14:04:28 +10:00
Kconfig crypto: omap-sham - Fix link error without crypto-engine 2021-01-27 11:55:06 +01:00
Makefile crypto: sa2ul - Add crypto driver 2020-07-23 17:34:16 +10:00
atmel-aes-regs.h
atmel-aes.c crypto: atmel-aes - convert to use be32_add_cpu() 2020-09-25 17:48:12 +10:00
atmel-authenc.h
atmel-ecc.c mm, treewide: rename kzfree() to kfree_sensitive() 2020-08-07 11:33:22 -07:00
atmel-i2c.c
atmel-i2c.h
atmel-sha-regs.h
atmel-sha.c crypto: lib/sha1 - remove unnecessary includes of linux/cryptohash.h 2020-05-08 15:32:17 +10:00
atmel-sha204a.c
atmel-tdes-regs.h
atmel-tdes.c crypto: atmel-tdes - use semicolons rather than commas to separate statements 2020-10-02 18:02:15 +10:00
exynos-rng.c
geode-aes.c
geode-aes.h
hifn_795x.c crypto: drivers - use semicolons rather than commas to separate statements 2020-10-02 18:02:15 +10:00
img-hash.c crypto: algapi - Remove skbuff.h inclusion 2020-08-20 14:04:28 +10:00
ixp4xx_crypto.c crypto: ixp4xx - update IV after requests 2021-07-14 16:56:03 +02:00
mxs-dcp.c crypto: mxs-dcp - Fix scatterlist processing 2022-04-08 14:39:59 +02:00
n2_asm.S
n2_core.c crypto: n2 - Fix sparse endianness warning 2020-09-18 17:20:12 +10:00
n2_core.h
omap-aes-gcm.c crypto: omap-aes - avoid spamming console with self tests 2020-06-04 22:03:39 +10:00
omap-aes.c crypto: omap-aes - Fix broken pm_runtime_and_get() usage 2022-01-27 10:54:24 +01:00
omap-aes.h crypto: omap-aes - permit asynchronous skcipher as fallback 2020-07-16 21:49:02 +10:00
omap-crypto.c crypto: omap-crypto - fix userspace copied buffer access 2020-06-04 22:03:40 +10:00
omap-crypto.h
omap-des.c crypto: omap - Fix inconsistent locking of device lists 2021-09-15 09:50:26 +02:00
omap-sham.c crypto: omap - Fix inconsistent locking of device lists 2021-09-15 09:50:26 +02:00
padlock-aes.c crypto: algapi - Remove skbuff.h inclusion 2020-08-20 14:04:28 +10:00
padlock-sha.c crypto: Convert to new CPU match macros 2020-03-24 21:36:06 +01:00
picoxcell_crypto.c crypto: picoxcell - Fix potential race condition bug 2020-08-21 14:47:50 +10:00
picoxcell_crypto_regs.h
qcom-rng.c crypto: qcom-rng - fix infinite loop on requests not multiple of WORD_SZ 2022-05-25 09:17:56 +02:00
s5p-sss.c crypto: s5p-sss - Add error handling in s5p_aes_probe() 2021-11-18 14:03:38 +01:00
sa2ul.c crypto: sa2ul - Fix pm_runtime enable in sa_ul_probe() 2021-07-14 16:56:04 +02:00
sa2ul.h crypto: sa2ul - Add AEAD algorithm support 2020-07-23 17:34:17 +10:00
sahara.c crypto: sahara - don't sleep when in softirq 2022-10-26 13:25:41 +02:00
talitos.c crypto: talitos - Fix ctr(aes) on SEC1 2021-03-04 11:37:45 +01:00
talitos.h crypto: talitos - Work around SEC6 ERRATA (AES-CTR mode data size error) 2021-03-04 11:37:45 +01:00