diff options
Diffstat (limited to 'src/lib/libcrypto/dh')
| -rw-r--r-- | src/lib/libcrypto/dh/dh_ameth.c | 11 | ||||
| -rw-r--r-- | src/lib/libcrypto/dh/dh_check.c | 8 | ||||
| -rw-r--r-- | src/lib/libcrypto/dh/dh_key.c | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/dh/dh_lib.c | 23 |
4 files changed, 17 insertions, 30 deletions
diff --git a/src/lib/libcrypto/dh/dh_ameth.c b/src/lib/libcrypto/dh/dh_ameth.c index 91178a92b0..729c996a1b 100644 --- a/src/lib/libcrypto/dh/dh_ameth.c +++ b/src/lib/libcrypto/dh/dh_ameth.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: dh_ameth.c,v 1.11 2014/07/11 08:44:48 jsing Exp $ */ | 1 | /* $OpenBSD: dh_ameth.c,v 1.12 2014/07/12 16:03:37 miod Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 2006. | 3 | * project 2006. |
| 4 | */ | 4 | */ |
| @@ -120,8 +120,7 @@ dh_pub_decode(EVP_PKEY *pkey, X509_PUBKEY *pubkey) | |||
| 120 | err: | 120 | err: |
| 121 | if (public_key) | 121 | if (public_key) |
| 122 | ASN1_INTEGER_free(public_key); | 122 | ASN1_INTEGER_free(public_key); |
| 123 | if (dh) | 123 | DH_free(dh); |
| 124 | DH_free(dh); | ||
| 125 | return 0; | 124 | return 0; |
| 126 | } | 125 | } |
| 127 | 126 | ||
| @@ -409,14 +408,12 @@ dh_copy_parameters(EVP_PKEY *to, const EVP_PKEY *from) | |||
| 409 | 408 | ||
| 410 | if ((a = BN_dup(from->pkey.dh->p)) == NULL) | 409 | if ((a = BN_dup(from->pkey.dh->p)) == NULL) |
| 411 | return 0; | 410 | return 0; |
| 412 | if (to->pkey.dh->p != NULL) | 411 | BN_free(to->pkey.dh->p); |
| 413 | BN_free(to->pkey.dh->p); | ||
| 414 | to->pkey.dh->p = a; | 412 | to->pkey.dh->p = a; |
| 415 | 413 | ||
| 416 | if ((a = BN_dup(from->pkey.dh->g)) == NULL) | 414 | if ((a = BN_dup(from->pkey.dh->g)) == NULL) |
| 417 | return 0; | 415 | return 0; |
| 418 | if (to->pkey.dh->g != NULL) | 416 | BN_free(to->pkey.dh->g); |
| 419 | BN_free(to->pkey.dh->g); | ||
| 420 | to->pkey.dh->g = a; | 417 | to->pkey.dh->g = a; |
| 421 | 418 | ||
| 422 | return 1; | 419 | return 1; |
diff --git a/src/lib/libcrypto/dh/dh_check.c b/src/lib/libcrypto/dh/dh_check.c index 01b9531a44..0f6c50b055 100644 --- a/src/lib/libcrypto/dh/dh_check.c +++ b/src/lib/libcrypto/dh/dh_check.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: dh_check.c,v 1.13 2014/07/11 08:44:48 jsing Exp $ */ | 1 | /* $OpenBSD: dh_check.c,v 1.14 2014/07/12 16:03:37 miod Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -114,10 +114,8 @@ DH_check(const DH *dh, int *ret) | |||
| 114 | } | 114 | } |
| 115 | ok = 1; | 115 | ok = 1; |
| 116 | err: | 116 | err: |
| 117 | if (ctx != NULL) | 117 | BN_CTX_free(ctx); |
| 118 | BN_CTX_free(ctx); | 118 | BN_free(q); |
| 119 | if (q != NULL) | ||
| 120 | BN_free(q); | ||
| 121 | return ok; | 119 | return ok; |
| 122 | } | 120 | } |
| 123 | 121 | ||
diff --git a/src/lib/libcrypto/dh/dh_key.c b/src/lib/libcrypto/dh/dh_key.c index 6d90816122..132ba5cfa4 100644 --- a/src/lib/libcrypto/dh/dh_key.c +++ b/src/lib/libcrypto/dh/dh_key.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: dh_key.c,v 1.20 2014/07/11 08:44:48 jsing Exp $ */ | 1 | /* $OpenBSD: dh_key.c,v 1.21 2014/07/12 16:03:37 miod Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -260,7 +260,6 @@ dh_init(DH *dh) | |||
| 260 | static int | 260 | static int |
| 261 | dh_finish(DH *dh) | 261 | dh_finish(DH *dh) |
| 262 | { | 262 | { |
| 263 | if (dh->method_mont_p) | 263 | BN_MONT_CTX_free(dh->method_mont_p); |
| 264 | BN_MONT_CTX_free(dh->method_mont_p); | ||
| 265 | return 1; | 264 | return 1; |
| 266 | } | 265 | } |
diff --git a/src/lib/libcrypto/dh/dh_lib.c b/src/lib/libcrypto/dh/dh_lib.c index 0a956e5416..c438f387c0 100644 --- a/src/lib/libcrypto/dh/dh_lib.c +++ b/src/lib/libcrypto/dh/dh_lib.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: dh_lib.c,v 1.19 2014/07/11 08:44:48 jsing Exp $ */ | 1 | /* $OpenBSD: dh_lib.c,v 1.20 2014/07/12 16:03:37 miod Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -194,21 +194,14 @@ DH_free(DH *r) | |||
| 194 | 194 | ||
| 195 | CRYPTO_free_ex_data(CRYPTO_EX_INDEX_DH, r, &r->ex_data); | 195 | CRYPTO_free_ex_data(CRYPTO_EX_INDEX_DH, r, &r->ex_data); |
| 196 | 196 | ||
| 197 | if (r->p != NULL) | 197 | BN_clear_free(r->p); |
| 198 | BN_clear_free(r->p); | 198 | BN_clear_free(r->g); |
| 199 | if (r->g != NULL) | 199 | BN_clear_free(r->q); |
| 200 | BN_clear_free(r->g); | 200 | BN_clear_free(r->j); |
| 201 | if (r->q != NULL) | ||
| 202 | BN_clear_free(r->q); | ||
| 203 | if (r->j != NULL) | ||
| 204 | BN_clear_free(r->j); | ||
| 205 | free(r->seed); | 201 | free(r->seed); |
| 206 | if (r->counter != NULL) | 202 | BN_clear_free(r->counter); |
| 207 | BN_clear_free(r->counter); | 203 | BN_clear_free(r->pub_key); |
| 208 | if (r->pub_key != NULL) | 204 | BN_clear_free(r->priv_key); |
| 209 | BN_clear_free(r->pub_key); | ||
| 210 | if (r->priv_key != NULL) | ||
| 211 | BN_clear_free(r->priv_key); | ||
| 212 | free(r); | 205 | free(r); |
| 213 | } | 206 | } |
| 214 | 207 | ||
