linux/drivers/crypto
Gustavo A. R. Silva 1793d1aba1 crypto: qat - use struct_size() helper
One of the more common cases of allocation size calculations is finding
the size of a structure that has a zero-sized array at the end, along
with memory for some number of elements for that array. For example:

struct qat_alg_buf_list {
	...
        struct qat_alg_buf bufers[];
} __packed __aligned(64);

Make use of the struct_size() helper instead of an open-coded version
in order to avoid any potential type mistakes.

So, replace the following form:

sizeof(struct qat_alg_buf_list) + ((1 + n) * sizeof(struct qat_alg_buf))

with:

struct_size(bufl, bufers, n + 1)

This code was detected with the help of Coccinelle.

Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2019-06-13 14:31:41 +08:00
..
amcc crypto: crypto4xx - block ciphers should only accept complete blocks 2019-05-23 14:13:09 +08:00
axis crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
bcm crypto: bcm - Make some symbols static 2019-06-13 14:31:40 +08:00
caam crypto: caam - disable some clock checks for iMX7ULP 2019-06-06 14:44:16 +08:00
cavium crypto: cavium/nitrox - Use the correct style for SPDX License Identifier 2019-06-13 14:31:41 +08:00
ccp crypto: ccp - Fix 3DES complaint from ccp-crypto module 2019-05-23 14:01:07 +08:00
ccree crypto: ccree - use a proper le32 type for le32 val 2019-05-03 14:03:30 +08:00
chelsio crypto: chelsio - count incomplete block in IV 2019-05-09 13:17:23 +08:00
hisilicon crypto: hisilicon - Forbid 2-key 3DES in FIPS mode 2019-04-18 22:15:00 +08:00
inside-secure crypto: inside-secure - do not rely on the hardware last bit for result descriptors 2019-06-06 14:38:56 +08:00
marvell crypto: marvell - Forbid 2-key 3DES in FIPS mode 2019-04-18 22:15:00 +08:00
mediatek crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
nx crypto: nx - don't abuse shash MAY_SLEEP flag 2019-04-25 15:38:12 +08:00
qat crypto: qat - use struct_size() helper 2019-06-13 14:31:41 +08:00
qce crypto: qce - Forbid 2-key 3DES in FIPS mode 2019-04-18 22:15:01 +08:00
rockchip crypto: rockchip - update IV buffer to contain the next IV 2019-04-18 22:15:04 +08:00
stm32 crypto: stm32/cryp - update to return iv_out 2019-05-03 14:03:29 +08:00
sunxi-ss crypto: sun4i-ss - fallback when length is not multiple of blocksize 2019-04-25 15:38:13 +08:00
ux500 crypto: ux500 - use ccflags-y instead of CFLAGS_<basename>.o 2019-04-25 15:40:39 +08:00
virtio crypto: virtio - clean up indentation, replace spaces with tab 2019-01-11 14:16:56 +08:00
vmx crypto: vmx - convert to skcipher API 2019-05-30 15:28:40 +08:00
atmel-aes-regs.h
atmel-aes.c crypto: atmel - switch to SPDX license identifiers 2018-09-04 11:37:04 +08:00
atmel-authenc.h crypto: atmel - switch to SPDX license identifiers 2018-09-04 11:37:04 +08:00
atmel-ecc.c crypto: atmel-ecc - factor out code that can be shared 2019-05-30 15:35:45 +08:00
atmel-i2c.c crypto: atmel - Fix sparse endianness warnings 2019-06-06 14:38:57 +08:00
atmel-i2c.h crypto: atmel - Fix sparse endianness warnings 2019-06-06 14:38:57 +08:00
atmel-sha204a.c crypto: atmel-i2c - add support for SHA204A random number generator 2019-05-30 15:35:45 +08:00
atmel-sha-regs.h
atmel-sha.c crypto: atmel - switch to SPDX license identifiers 2018-09-04 11:37:04 +08:00
atmel-tdes-regs.h
atmel-tdes.c crypto: atmel - remove set but not used variable 'alg_name' 2019-05-03 14:03:29 +08:00
exynos-rng.c
geode-aes.c crypto: drop mask=CRYPTO_ALG_ASYNC from 'cipher' tfm allocations 2018-11-20 14:26:55 +08:00
geode-aes.h
hifn_795x.c crypto: hifn_795x - Forbid 2-key 3DES in FIPS mode 2019-04-18 22:15:00 +08:00
img-hash.c
ixp4xx_crypto.c crypto: ixp4xx - Fix cross-compile errors due to type mismatch 2019-05-30 15:30:05 +08:00
Kconfig crypto: atmel-i2c - Fix build error while CRC16 set to m 2019-06-06 14:44:16 +08:00
Makefile crypto: atmel-i2c - add support for SHA204A random number generator 2019-05-30 15:35:45 +08:00
mxs-dcp.c crypto: mxs-dcp - remove set but not used variable 'fini' 2019-04-18 22:14:58 +08:00
n2_asm.S
n2_core.c crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
n2_core.h
omap-aes-gcm.c
omap-aes.c crypto: skcipher - remove remnants of internal IV generators 2018-12-23 11:52:45 +08:00
omap-aes.h crypto: omap-aes - Remove VLA usage of skcipher 2018-09-28 12:46:09 +08:00
omap-crypto.c
omap-crypto.h
omap-des.c crypto: omap - Forbid 2-key 3DES in FIPS mode 2019-04-18 22:15:00 +08:00
omap-sham.c crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
padlock-aes.c crypto: padlock-aes - Fix Nano workaround data corruption 2018-07-20 13:47:42 +08:00
padlock-sha.c crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
picoxcell_crypto_regs.h
picoxcell_crypto.c crypto: picoxcell - Use dev_get_drvdata() 2019-05-03 14:03:29 +08:00
qcom-rng.c crypto: qcom-rng - Add ACPI support 2018-07-27 19:04:32 +08:00
s5p-sss.c crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
sahara.c crypto: sahara - Convert IS_ENABLED uses to __is_defined 2019-04-18 22:14:58 +08:00
talitos.c crypto: talitos - use SPDX-License-Identifier 2019-05-30 15:30:05 +08:00
talitos.h crypto: talitos - use SPDX-License-Identifier 2019-05-30 15:30:05 +08:00