linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] crypto: sm2 - fix a memory leak in sm2
       [not found] <1622552752-15501-1-git-send-email-herbert.tencent@gmail.com>
@ 2021-06-03 12:34 ` Herbert Xu
  2021-06-04  2:11   ` hongbo li
  0 siblings, 1 reply; 6+ messages in thread
From: Herbert Xu @ 2021-06-03 12:34 UTC (permalink / raw)
  To: Hongbo Li
  Cc: keyrings, linux-crypto, ebiggers, dhowells, jarkko,
	tianjia.zhang, herberthbli, linux-kernel

On Tue, Jun 01, 2021 at 09:05:52PM +0800, Hongbo Li wrote:
> From: Hongbo Li <herberthbli@tencent.com>
> 
> SM2 module alloc ec->Q in sm2_set_pub_key(), when doing alg test in
> test_akcipher_one(), it will set public key for every test vector,
> and don't free ec->Q. This will cause a memory leak.
> 
> This patch alloc ec->Q in sm2_ec_ctx_init().
> 
> Fixes: ea7ecb66440b ("crypto: sm2 - introduce OSCCA SM2 asymmetric cipher algorithm")
> Signed-off-by: Hongbo Li <herberthbli@tencent.com>
> Cc: stable@vger.kernel.org # v5.10+
> Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
> ---
>  crypto/sm2.c | 24 ++++++++++--------------
>  1 file changed, 10 insertions(+), 14 deletions(-)

Your patch has been discarded by patchwork because you didn't
update the Subject.  The usual method is to use a version prefix
such as v2, v3, etc. so that the Subject remains distinct.

Please resubmit with a new Subject.

Oh and don't cc stable@vger.kernel.org.

Thanks,
-- 
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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] crypto: sm2 - fix a memory leak in sm2
  2021-06-03 12:34 ` [PATCH] crypto: sm2 - fix a memory leak in sm2 Herbert Xu
@ 2021-06-04  2:11   ` hongbo li
  0 siblings, 0 replies; 6+ messages in thread
From: hongbo li @ 2021-06-04  2:11 UTC (permalink / raw)
  To: Herbert Xu
  Cc: open list:ASYMMETRIC KEYS, linux-crypto, Eric Biggers,
	David Howells, jarkko, Tianjia Zhang,
	herberthbli(李弘博),
	open list

Thank you for your review, I will resend this patch.
Regards,
Hongbo

Herbert Xu <herbert@gondor.apana.org.au> 于2021年6月3日周四 下午8:34写道:
>
> On Tue, Jun 01, 2021 at 09:05:52PM +0800, Hongbo Li wrote:
> > From: Hongbo Li <herberthbli@tencent.com>
> >
> > SM2 module alloc ec->Q in sm2_set_pub_key(), when doing alg test in
> > test_akcipher_one(), it will set public key for every test vector,
> > and don't free ec->Q. This will cause a memory leak.
> >
> > This patch alloc ec->Q in sm2_ec_ctx_init().
> >
> > Fixes: ea7ecb66440b ("crypto: sm2 - introduce OSCCA SM2 asymmetric cipher algorithm")
> > Signed-off-by: Hongbo Li <herberthbli@tencent.com>
> > Cc: stable@vger.kernel.org # v5.10+
> > Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
> > ---
> >  crypto/sm2.c | 24 ++++++++++--------------
> >  1 file changed, 10 insertions(+), 14 deletions(-)
>
> Your patch has been discarded by patchwork because you didn't
> update the Subject.  The usual method is to use a version prefix
> such as v2, v3, etc. so that the Subject remains distinct.
>
> Please resubmit with a new Subject.
>
> Oh and don't cc stable@vger.kernel.org.
>
> Thanks,
> --
> 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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] crypto: sm2 - fix a memory leak in sm2
  2021-06-01  2:54 ` Tianjia Zhang
@ 2021-06-01 13:04   ` hongbo li
  0 siblings, 0 replies; 6+ messages in thread
From: hongbo li @ 2021-06-01 13:04 UTC (permalink / raw)
  To: Tianjia Zhang
  Cc: open list:ASYMMETRIC KEYS, linux-crypto, Herbert Xu,
	Eric Biggers, David Howells, jarkko,
	herberthbli(李弘博),
	open list, stable

Hi Tianjia,

Tianjia Zhang <tianjia.zhang@linux.alibaba.com> 于2021年6月1日周二 上午10:54写道:
>
> Hi Hongbo,
>
> On 5/31/21 9:30 PM, Hongbo Li wrote:
> > From: Hongbo Li <herberthbli@tencent.com>
> >
> > SM2 module alloc ec->Q in sm2_set_pub_key(), when doing alg test in
> > test_akcipher_one(), it will set public key for every test vector,
> > and don't free ec->Q. This will cause a memory leak.
> >
> > This patch alloc ec->Q in sm2_ec_ctx_init().
> >
> > Fixes: ea7ecb66440b ("crypto: sm2 - introduce OSCCA SM2 asymmetric cipher algorithm")
> > Signed-off-by: Hongbo Li <herberthbli@tencent.com>
> > Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
> > ---
> >   crypto/sm2.c | 24 ++++++++++--------------
> >   1 file changed, 10 insertions(+), 14 deletions(-)
> >
>
> Just add Cc: to SOB, like this:
>
>    Fixes: ea7ecb66440b (...)
>    Signed-off-by: Hongbo Li <herberthbli@tencent.com>
>    Cc: stable@vger.kernel.org # v5.10+
>    Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
>
> Thanks,
> Tianjia

Thank you, I will resend the patch.
Hongbo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] crypto: sm2 - fix a memory leak in sm2
  2021-05-31 13:30 Hongbo Li
  2021-05-31 14:09 ` Greg KH
@ 2021-06-01  2:54 ` Tianjia Zhang
  2021-06-01 13:04   ` hongbo li
  1 sibling, 1 reply; 6+ messages in thread
From: Tianjia Zhang @ 2021-06-01  2:54 UTC (permalink / raw)
  To: Hongbo Li, keyrings, linux-crypto, herbert, ebiggers, dhowells,
	jarkko, herberthbli
  Cc: linux-kernel, stable

Hi Hongbo,

On 5/31/21 9:30 PM, Hongbo Li wrote:
> From: Hongbo Li <herberthbli@tencent.com>
> 
> SM2 module alloc ec->Q in sm2_set_pub_key(), when doing alg test in
> test_akcipher_one(), it will set public key for every test vector,
> and don't free ec->Q. This will cause a memory leak.
> 
> This patch alloc ec->Q in sm2_ec_ctx_init().
> 
> Fixes: ea7ecb66440b ("crypto: sm2 - introduce OSCCA SM2 asymmetric cipher algorithm")
> Signed-off-by: Hongbo Li <herberthbli@tencent.com>
> Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
> ---
>   crypto/sm2.c | 24 ++++++++++--------------
>   1 file changed, 10 insertions(+), 14 deletions(-)
> 

Just add Cc: to SOB, like this:

   Fixes: ea7ecb66440b (...)
   Signed-off-by: Hongbo Li <herberthbli@tencent.com>
   Cc: stable@vger.kernel.org # v5.10+
   Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>

Thanks,
Tianjia

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] crypto: sm2 - fix a memory leak in sm2
  2021-05-31 13:30 Hongbo Li
@ 2021-05-31 14:09 ` Greg KH
  2021-06-01  2:54 ` Tianjia Zhang
  1 sibling, 0 replies; 6+ messages in thread
From: Greg KH @ 2021-05-31 14:09 UTC (permalink / raw)
  To: Hongbo Li
  Cc: keyrings, linux-crypto, herbert, ebiggers, dhowells, jarkko,
	tianjia.zhang, herberthbli, linux-kernel, stable

On Mon, May 31, 2021 at 09:30:01PM +0800, Hongbo Li wrote:
> From: Hongbo Li <herberthbli@tencent.com>
> 
> SM2 module alloc ec->Q in sm2_set_pub_key(), when doing alg test in
> test_akcipher_one(), it will set public key for every test vector,
> and don't free ec->Q. This will cause a memory leak.
> 
> This patch alloc ec->Q in sm2_ec_ctx_init().
> 
> Fixes: ea7ecb66440b ("crypto: sm2 - introduce OSCCA SM2 asymmetric cipher algorithm")
> Signed-off-by: Hongbo Li <herberthbli@tencent.com>
> Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
> ---
>  crypto/sm2.c | 24 ++++++++++--------------
>  1 file changed, 10 insertions(+), 14 deletions(-)
> 

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] crypto: sm2 - fix a memory leak in sm2
@ 2021-05-31 13:30 Hongbo Li
  2021-05-31 14:09 ` Greg KH
  2021-06-01  2:54 ` Tianjia Zhang
  0 siblings, 2 replies; 6+ messages in thread
From: Hongbo Li @ 2021-05-31 13:30 UTC (permalink / raw)
  To: keyrings, linux-crypto, herbert, ebiggers, dhowells, jarkko,
	tianjia.zhang, herberthbli
  Cc: linux-kernel, stable

From: Hongbo Li <herberthbli@tencent.com>

SM2 module alloc ec->Q in sm2_set_pub_key(), when doing alg test in
test_akcipher_one(), it will set public key for every test vector,
and don't free ec->Q. This will cause a memory leak.

This patch alloc ec->Q in sm2_ec_ctx_init().

Fixes: ea7ecb66440b ("crypto: sm2 - introduce OSCCA SM2 asymmetric cipher algorithm")
Signed-off-by: Hongbo Li <herberthbli@tencent.com>
Reviewed-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
---
 crypto/sm2.c | 24 ++++++++++--------------
 1 file changed, 10 insertions(+), 14 deletions(-)

diff --git a/crypto/sm2.c b/crypto/sm2.c
index b21addc..db8a4a2 100644
--- a/crypto/sm2.c
+++ b/crypto/sm2.c
@@ -79,10 +79,17 @@ static int sm2_ec_ctx_init(struct mpi_ec_ctx *ec)
 		goto free;
 
 	rc = -ENOMEM;
+
+	ec->Q = mpi_point_new(0);
+	if (!ec->Q)
+		goto free;
+
 	/* mpi_ec_setup_elliptic_curve */
 	ec->G = mpi_point_new(0);
-	if (!ec->G)
+	if (!ec->G) {
+		mpi_point_release(ec->Q);
 		goto free;
+	}
 
 	mpi_set(ec->G->x, x);
 	mpi_set(ec->G->y, y);
@@ -91,6 +98,7 @@ static int sm2_ec_ctx_init(struct mpi_ec_ctx *ec)
 	rc = -EINVAL;
 	ec->n = mpi_scanval(ecp->n);
 	if (!ec->n) {
+		mpi_point_release(ec->Q);
 		mpi_point_release(ec->G);
 		goto free;
 	}
@@ -386,27 +394,15 @@ static int sm2_set_pub_key(struct crypto_akcipher *tfm,
 	MPI a;
 	int rc;
 
-	ec->Q = mpi_point_new(0);
-	if (!ec->Q)
-		return -ENOMEM;
-
 	/* include the uncompressed flag '0x04' */
-	rc = -ENOMEM;
 	a = mpi_read_raw_data(key, keylen);
 	if (!a)
-		goto error;
+		return -ENOMEM;
 
 	mpi_normalize(a);
 	rc = sm2_ecc_os2ec(ec->Q, a);
 	mpi_free(a);
-	if (rc)
-		goto error;
-
-	return 0;
 
-error:
-	mpi_point_release(ec->Q);
-	ec->Q = NULL;
 	return rc;
 }
 
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-06-04  2:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1622552752-15501-1-git-send-email-herbert.tencent@gmail.com>
2021-06-03 12:34 ` [PATCH] crypto: sm2 - fix a memory leak in sm2 Herbert Xu
2021-06-04  2:11   ` hongbo li
2021-05-31 13:30 Hongbo Li
2021-05-31 14:09 ` Greg KH
2021-06-01  2:54 ` Tianjia Zhang
2021-06-01 13:04   ` hongbo li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).