diff options
Diffstat (limited to 'src/lib/libcrypto/dsa/dsa_gen.c')
-rw-r--r-- | src/lib/libcrypto/dsa/dsa_gen.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/lib/libcrypto/dsa/dsa_gen.c b/src/lib/libcrypto/dsa/dsa_gen.c index d41e7562e1..a3d07b901a 100644 --- a/src/lib/libcrypto/dsa/dsa_gen.c +++ b/src/lib/libcrypto/dsa/dsa_gen.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: dsa_gen.c,v 1.15 2014/07/11 08:44:48 jsing Exp $ */ | 1 | /* $OpenBSD: dsa_gen.c,v 1.16 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 | * |
@@ -322,12 +322,9 @@ end: | |||
322 | ok = 1; | 322 | ok = 1; |
323 | err: | 323 | err: |
324 | if (ok) { | 324 | if (ok) { |
325 | if (ret->p) | 325 | BN_free(ret->p); |
326 | BN_free(ret->p); | 326 | BN_free(ret->q); |
327 | if (ret->q) | 327 | BN_free(ret->g); |
328 | BN_free(ret->q); | ||
329 | if (ret->g) | ||
330 | BN_free(ret->g); | ||
331 | ret->p = BN_dup(p); | 328 | ret->p = BN_dup(p); |
332 | ret->q = BN_dup(q); | 329 | ret->q = BN_dup(q); |
333 | ret->g = BN_dup(g); | 330 | ret->g = BN_dup(g); |
@@ -346,8 +343,7 @@ err: | |||
346 | BN_CTX_end(ctx); | 343 | BN_CTX_end(ctx); |
347 | BN_CTX_free(ctx); | 344 | BN_CTX_free(ctx); |
348 | } | 345 | } |
349 | if (mont != NULL) | 346 | BN_MONT_CTX_free(mont); |
350 | BN_MONT_CTX_free(mont); | ||
351 | return ok; | 347 | return ok; |
352 | } | 348 | } |
353 | #endif | 349 | #endif |