[openssl-commits] [openssl] OpenSSL_1_1_0-stable update

Rich Salz rsalz at openssl.org
Tue Jun 13 17:51:28 UTC 2017


The branch OpenSSL_1_1_0-stable has been updated
       via  7cc9b2cde103745e036d256209b7cb3f696fe7af (commit)
      from  f05cece6e23ff1737f8cad7f9442dcca25745de1 (commit)


- Log -----------------------------------------------------------------
commit 7cc9b2cde103745e036d256209b7cb3f696fe7af
Author: Bernd Edlinger <bernd.edlinger at hotmail.de>
Date:   Tue Jun 13 07:22:50 2017 +0200

    Fix a memleak in ec_copy_parameters.
    
    Reviewed-by: Matt Caswell <matt at openssl.org>
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/3666)
    (cherry picked from commit 188a9bd950837c70661aa6849894e4e02d129031)

-----------------------------------------------------------------------

Summary of changes:
 crypto/ec/ec_ameth.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/crypto/ec/ec_ameth.c b/crypto/ec/ec_ameth.c
index fa5bd03..b66adf2 100644
--- a/crypto/ec/ec_ameth.c
+++ b/crypto/ec/ec_ameth.c
@@ -298,17 +298,21 @@ static int ec_missing_parameters(const EVP_PKEY *pkey)
 static int ec_copy_parameters(EVP_PKEY *to, const EVP_PKEY *from)
 {
     EC_GROUP *group = EC_GROUP_dup(EC_KEY_get0_group(from->pkey.ec));
+
     if (group == NULL)
         return 0;
     if (to->pkey.ec == NULL) {
         to->pkey.ec = EC_KEY_new();
         if (to->pkey.ec == NULL)
-            return 0;
+            goto err;
     }
     if (EC_KEY_set_group(to->pkey.ec, group) == 0)
-        return 0;
+        goto err;
     EC_GROUP_free(group);
     return 1;
+ err:
+    EC_GROUP_free(group);
+    return 0;
 }
 
 static int ec_cmp_parameters(const EVP_PKEY *a, const EVP_PKEY *b)


More information about the openssl-commits mailing list