Messages in this thread | | | Date | Thu, 23 Jul 2020 04:32:35 +0300 | From | Jarkko Sakkinen <> | Subject | Re: [PATCH] keys: asymmetric: fix error return code in software_key_query() |
| |
On Wed, Jul 15, 2020 at 11:28:38PM +0100, David Howells wrote: > From: Wei Yongjun <weiyongjun1@huawei.com> > > Fix to return negative error code -ENOMEM from kmalloc() error handling > case instead of 0, as done elsewhere in this function. > > Fixes: f1774cb8956a ("X.509: parse public key parameters from x509 for akcipher") > Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> > Signed-off-by: David Howells <dhowells@redhat.com>
Why f1774cb8956a lacked any possible testing? It extends ABI anyway.
I think it is a kind of change that would require more screening before getting applied.
> --- > > crypto/asymmetric_keys/public_key.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/crypto/asymmetric_keys/public_key.c b/crypto/asymmetric_keys/public_key.c > index d7f43d4ea925..e5fae4e838c0 100644 > --- a/crypto/asymmetric_keys/public_key.c > +++ b/crypto/asymmetric_keys/public_key.c > @@ -119,6 +119,7 @@ static int software_key_query(const struct kernel_pkey_params *params, > if (IS_ERR(tfm)) > return PTR_ERR(tfm); > > + ret = -ENOMEM;
This is extremely confusing to read way to handle 'ret'.
Would be way more cleaner to be just simple and stupid:
if (!key) { ret = -ENOMEM; goto error_free_tfm; }
> key = kmalloc(pkey->keylen + sizeof(u32) * 2 + pkey->paramlen, > GFP_KERNEL); > if (!key)
/Jarkko
| |