diff options
Diffstat (limited to 'src/lib/libcrypto/ec/ec_lib.c')
-rw-r--r-- | src/lib/libcrypto/ec/ec_lib.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/lib/libcrypto/ec/ec_lib.c b/src/lib/libcrypto/ec/ec_lib.c index 3d8b96eb1f..47ccc614d1 100644 --- a/src/lib/libcrypto/ec/ec_lib.c +++ b/src/lib/libcrypto/ec/ec_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ec_lib.c,v 1.14 2014/07/10 22:45:57 jsing Exp $ */ | 1 | /* $OpenBSD: ec_lib.c,v 1.15 2014/07/12 16:03:37 miod Exp $ */ |
2 | /* | 2 | /* |
3 | * Originally written by Bodo Moeller for the OpenSSL project. | 3 | * Originally written by Bodo Moeller for the OpenSSL project. |
4 | */ | 4 | */ |
@@ -124,8 +124,7 @@ EC_GROUP_free(EC_GROUP * group) | |||
124 | 124 | ||
125 | EC_EX_DATA_free_all_data(&group->extra_data); | 125 | EC_EX_DATA_free_all_data(&group->extra_data); |
126 | 126 | ||
127 | if (group->generator != NULL) | 127 | EC_POINT_free(group->generator); |
128 | EC_POINT_free(group->generator); | ||
129 | BN_free(&group->order); | 128 | BN_free(&group->order); |
130 | BN_free(&group->cofactor); | 129 | BN_free(&group->cofactor); |
131 | 130 | ||
@@ -148,8 +147,7 @@ EC_GROUP_clear_free(EC_GROUP * group) | |||
148 | 147 | ||
149 | EC_EX_DATA_clear_free_all_data(&group->extra_data); | 148 | EC_EX_DATA_clear_free_all_data(&group->extra_data); |
150 | 149 | ||
151 | if (group->generator != NULL) | 150 | EC_POINT_clear_free(group->generator); |
152 | EC_POINT_clear_free(group->generator); | ||
153 | BN_clear_free(&group->order); | 151 | BN_clear_free(&group->order); |
154 | BN_clear_free(&group->cofactor); | 152 | BN_clear_free(&group->cofactor); |
155 | 153 | ||
@@ -200,10 +198,8 @@ EC_GROUP_copy(EC_GROUP * dest, const EC_GROUP * src) | |||
200 | return 0; | 198 | return 0; |
201 | } else { | 199 | } else { |
202 | /* src->generator == NULL */ | 200 | /* src->generator == NULL */ |
203 | if (dest->generator != NULL) { | 201 | EC_POINT_clear_free(dest->generator); |
204 | EC_POINT_clear_free(dest->generator); | 202 | dest->generator = NULL; |
205 | dest->generator = NULL; | ||
206 | } | ||
207 | } | 203 | } |
208 | 204 | ||
209 | if (!BN_copy(&dest->order, &src->order)) | 205 | if (!BN_copy(&dest->order, &src->order)) |
@@ -252,8 +248,7 @@ EC_GROUP_dup(const EC_GROUP * a) | |||
252 | 248 | ||
253 | err: | 249 | err: |
254 | if (!ok) { | 250 | if (!ok) { |
255 | if (t) | 251 | EC_GROUP_free(t); |
256 | EC_GROUP_free(t); | ||
257 | return NULL; | 252 | return NULL; |
258 | } else | 253 | } else |
259 | return t; | 254 | return t; |