[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZCah3f/Z8nzdHITy@gondor.apana.org.au>
Date: Fri, 31 Mar 2023 17:03:25 +0800
From: Herbert Xu <herbert@...dor.apana.org.au>
To: Harsha Harsha <harsha.harsha@....com>
Cc: davem@...emloft.net, linux-crypto@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
michals@...inx.com, saratcha@...inx.com, git@....com,
Dhaval Shah <dhaval.r.shah@....com>
Subject: Re: [PATCH V2 3/4] crypto: xilinx: Add ZynqMP RSA driver
On Tue, Mar 21, 2023 at 11:04:45AM +0530, Harsha Harsha wrote:
>
> +static inline int xilinx_copy_and_save_keypart(u8 **kpbuf, unsigned int *kplen,
> + const u8 *buf, size_t sz)
> +{
> + int nskip;
> +
> + for (nskip = 0; nskip < sz; nskip++)
> + if (buf[nskip])
> + break;
> +
> + *kplen = sz - nskip;
> + *kpbuf = kmemdup(buf + nskip, *kplen, GFP_KERNEL);
> + if (!*kpbuf)
> + return -ENOMEM;
> +
> + return 0;
> +}
...
> +static int xilinx_rsa_setkey(struct crypto_akcipher *tfm, const void *key,
> + unsigned int keylen, bool private)
> +{
> + struct xilinx_rsa_tfm_ctx *tctx = akcipher_tfm_ctx(tfm);
> + struct rsa_key raw_key;
> + int ret;
> +
> + if (private)
> + ret = rsa_parse_priv_key(&raw_key, key, keylen);
> + else
> + ret = rsa_parse_pub_key(&raw_key, key, keylen);
> + if (ret)
> + goto n_key;
> +
> + ret = xilinx_copy_and_save_keypart(&tctx->n_buf, &tctx->n_len,
> + raw_key.n, raw_key.n_sz);
What happens when you call setkey twice? Wouldn't this leak memory?
Cheers,
--
Email: Herbert Xu <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Powered by blists - more mailing lists