lkml.org 
[lkml]   [2023]   [Apr]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH V2 3/4] crypto: xilinx: Add ZynqMP RSA driver
Date
Hi Herbert,


> -----Original Message-----
> From: Herbert Xu <herbert@gondor.apana.org.au>
> Sent: Friday, March 31, 2023 2:33 PM
> To: Harsha, Harsha <harsha.harsha@amd.com>
> Cc: davem@davemloft.net; linux-crypto@vger.kernel.org; linux-
> kernel@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
> michals@xilinx.com; saratcha@xilinx.com; git (AMD-Xilinx) <git@amd.com>;
> Shah, Dhaval (CPG-PSAV) <dhaval.r.shah@amd.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?

Thanks for the review. I will check the behavior and get back to you.

Regards,
Harsha

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

\
 
 \ /
  Last update: 2023-04-03 11:49    [W:0.092 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site