summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/ec/ec_asn1.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/ec/ec_asn1.c')
-rw-r--r--src/lib/libcrypto/ec/ec_asn1.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/lib/libcrypto/ec/ec_asn1.c b/src/lib/libcrypto/ec/ec_asn1.c
index 1fb0670efe..f5a1331ba3 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.28 2018/07/10 22:06:14 tb Exp $ */ 1/* $OpenBSD: ec_asn1.c,v 1.29 2018/07/15 05:38:48 jsg Exp $ */
2/* 2/*
3 * Written by Nils Larsch for the OpenSSL project. 3 * Written by Nils Larsch for the OpenSSL project.
4 */ 4 */
@@ -793,7 +793,7 @@ ec_asn1_group2fieldid(const EC_GROUP * group, X9_62_FIELDID * field)
793 793
794 ok = 1; 794 ok = 1;
795 795
796 err: 796err:
797 BN_free(tmp); 797 BN_free(tmp);
798 return (ok); 798 return (ok);
799} 799}
@@ -896,7 +896,7 @@ ec_asn1_group2curve(const EC_GROUP * group, X9_62_CURVE * curve)
896 896
897 ok = 1; 897 ok = 1;
898 898
899 err: 899err:
900 free(buffer_1); 900 free(buffer_1);
901 free(buffer_2); 901 free(buffer_2);
902 BN_free(tmp_1); 902 BN_free(tmp_1);
@@ -988,8 +988,7 @@ ec_asn1_group2parameters(const EC_GROUP * group, ECPARAMETERS * param)
988 } 988 }
989 ok = 1; 989 ok = 1;
990 990
991 err: 991err: if (!ok) {
992 if (!ok) {
993 if (ret && !param) 992 if (ret && !param)
994 ECPARAMETERS_free(ret); 993 ECPARAMETERS_free(ret);
995 ret = NULL; 994 ret = NULL;
@@ -1245,8 +1244,7 @@ ec_asn1_parameters2group(const ECPARAMETERS * params)
1245 } 1244 }
1246 ok = 1; 1245 ok = 1;
1247 1246
1248 err: 1247err: if (!ok) {
1249 if (!ok) {
1250 EC_GROUP_clear_free(ret); 1248 EC_GROUP_clear_free(ret);
1251 ret = NULL; 1249 ret = NULL;
1252 } 1250 }
@@ -1314,7 +1312,7 @@ d2i_ECPKParameters(EC_GROUP ** a, const unsigned char **in, long len)
1314 *a = group; 1312 *a = group;
1315 } 1313 }
1316 1314
1317 err: 1315err:
1318 ECPKPARAMETERS_free(params); 1316 ECPKPARAMETERS_free(params);
1319 return (group); 1317 return (group);
1320} 1318}
@@ -1427,7 +1425,7 @@ d2i_ECPrivateKey(EC_KEY ** a, const unsigned char **in, long len)
1427 *a = ret; 1425 *a = ret;
1428 return (ret); 1426 return (ret);
1429 1427
1430 err: 1428err:
1431 if (a == NULL || *a != ret) 1429 if (a == NULL || *a != ret)
1432 EC_KEY_free(ret); 1430 EC_KEY_free(ret);
1433 if (priv_key) 1431 if (priv_key)
@@ -1512,7 +1510,7 @@ i2d_ECPrivateKey(EC_KEY * a, unsigned char **out)
1512 goto err; 1510 goto err;
1513 } 1511 }
1514 ok = 1; 1512 ok = 1;
1515 err: 1513err:
1516 free(buffer); 1514 free(buffer);
1517 if (priv_key) 1515 if (priv_key)
1518 EC_PRIVATEKEY_free(priv_key); 1516 EC_PRIVATEKEY_free(priv_key);