Re: [PATCH 3/6] crypto: api - avoid VLA use

From: Herbert Xu
Date: Sat Apr 07 2018 - 23:16:59 EST


On Sat, Apr 07, 2018 at 08:38:20PM +0200, Salvatore Mesoraca wrote:
>
> int crypto_init_cipher_ops(struct crypto_tfm *tfm)
> {
> + const unsigned long alignmask = crypto_tfm_alg_alignmask(tfm);
> + const unsigned int size = crypto_tfm_alg_blocksize(tfm);
> struct cipher_tfm *ops = &tfm->crt_cipher;
> struct cipher_alg *cipher = &tfm->__crt_alg->cra_cipher;
>
> + if (size > MAX_BLOCKSIZE || alignmask > MAX_ALIGNMASK)
> + return -EINVAL;
> +

This check should be done when the algorithm is registered. Perhaps
crypto_check_alg.

Thanks,
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt