summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authordoug <>2015-03-20 03:02:51 +0000
committerdoug <>2015-03-20 03:02:51 +0000
commitc12f0e8171f2b611dd77254adddc73b4b515947e (patch)
tree4a0b0e0d288ccdc4a179f5b1be9bacf2000559ad /src/lib
parent591683cb1abeb821f265a53d2b4f65e543f7bbdc (diff)
downloadopenbsd-c12f0e8171f2b611dd77254adddc73b4b515947e.tar.gz
openbsd-c12f0e8171f2b611dd77254adddc73b4b515947e.tar.bz2
openbsd-c12f0e8171f2b611dd77254adddc73b4b515947e.zip
Fix a memory leak in an error path.
From OpenSSL commit 5e5d53d341fd9a9b9cc0a58eb3690832ca7a511f. ok guenther@, logan@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libcrypto/ec/ec_asn1.c4
-rw-r--r--src/lib/libssl/src/crypto/ec/ec_asn1.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/libcrypto/ec/ec_asn1.c b/src/lib/libcrypto/ec/ec_asn1.c
index f01008ec43..e1d3f6bad7 100644
--- a/src/lib/libcrypto/ec/ec_asn1.c
+++ b/src/lib/libcrypto/ec/ec_asn1.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ec_asn1.c,v 1.13 2015/03/19 14:00:22 tedu Exp $ */ 1/* $OpenBSD: ec_asn1.c,v 1.14 2015/03/20 03:02:51 doug Exp $ */
2/* 2/*
3 * Written by Nils Larsch for the OpenSSL project. 3 * Written by Nils Larsch for the OpenSSL project.
4 */ 4 */
@@ -1235,6 +1235,8 @@ d2i_ECParameters(EC_KEY ** a, const unsigned char **in, long len)
1235 1235
1236 if (!d2i_ECPKParameters(&ret->group, in, len)) { 1236 if (!d2i_ECPKParameters(&ret->group, in, len)) {
1237 ECerr(EC_F_D2I_ECPARAMETERS, ERR_R_EC_LIB); 1237 ECerr(EC_F_D2I_ECPARAMETERS, ERR_R_EC_LIB);
1238 if (a == NULL || *a != ret)
1239 EC_KEY_free(ret);
1238 return NULL; 1240 return NULL;
1239 } 1241 }
1240 1242
diff --git a/src/lib/libssl/src/crypto/ec/ec_asn1.c b/src/lib/libssl/src/crypto/ec/ec_asn1.c
index f01008ec43..e1d3f6bad7 100644
--- a/src/lib/libssl/src/crypto/ec/ec_asn1.c
+++ b/src/lib/libssl/src/crypto/ec/ec_asn1.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ec_asn1.c,v 1.13 2015/03/19 14:00:22 tedu Exp $ */ 1/* $OpenBSD: ec_asn1.c,v 1.14 2015/03/20 03:02:51 doug Exp $ */
2/* 2/*
3 * Written by Nils Larsch for the OpenSSL project. 3 * Written by Nils Larsch for the OpenSSL project.
4 */ 4 */
@@ -1235,6 +1235,8 @@ d2i_ECParameters(EC_KEY ** a, const unsigned char **in, long len)
1235 1235
1236 if (!d2i_ECPKParameters(&ret->group, in, len)) { 1236 if (!d2i_ECPKParameters(&ret->group, in, len)) {
1237 ECerr(EC_F_D2I_ECPARAMETERS, ERR_R_EC_LIB); 1237 ECerr(EC_F_D2I_ECPARAMETERS, ERR_R_EC_LIB);
1238 if (a == NULL || *a != ret)
1239 EC_KEY_free(ret);
1238 return NULL; 1240 return NULL;
1239 } 1241 }
1240 1242