mirror of https://gitee.com/openkylin/linux.git
225b3dc92d
In preparation to enabling -Wvla, remove VLA and replace it with dynamic memory allocation instead. The use of stack Variable Length Arrays needs to be avoided, as they can be a vector for stack exhaustion, which can be both a runtime bug or a security flaw. Also, in general, as code evolves it is easy to lose track of how big a VLA can get. Thus, we can end up having runtime failures that are hard to debug. Also, fixed as part of the directive to remove all VLAs from the kernel: https://lkml.org/lkml/2018/3/7/621 Notice that in this particular case, an alternative to kzalloc is kcalloc, in which case the code would look as follows instead: iv = kcalloc(crypto_skcipher_ivsize(tfm_cbc), sizeof(*iv), GFP_KERNEL); but if the data type of _iv_ never changes, or the type size is always one byte, kzalloc is good enough. Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
cbaf.c | ||
crypto.c | ||
dev-sysfs.c | ||
devconnect.c | ||
mmc.c | ||
pal.c | ||
reservation.c | ||
rh.c | ||
security.c | ||
wa-hc.c | ||
wa-hc.h | ||
wa-nep.c | ||
wa-rpipe.c | ||
wa-xfer.c | ||
wusbhc.c | ||
wusbhc.h |