diff options
| author | mmcc <> | 2016-03-11 07:08:45 +0000 | 
|---|---|---|
| committer | mmcc <> | 2016-03-11 07:08:45 +0000 | 
| commit | 3935f3d5bc0215b231fcd3c9f9ebd7cf653cfcde (patch) | |
| tree | b799fc9672743546b69747e9e1d53d9423de380c /src/lib/libssl/ssl_cert.c | |
| parent | 611da161680b9bef86bcb6214e04eede1f25d9c4 (diff) | |
| download | openbsd-3935f3d5bc0215b231fcd3c9f9ebd7cf653cfcde.tar.gz openbsd-3935f3d5bc0215b231fcd3c9f9ebd7cf653cfcde.tar.bz2 openbsd-3935f3d5bc0215b231fcd3c9f9ebd7cf653cfcde.zip  | |
X509_free(3) is NULL-safe, so remove NULL checks before its calls.
ok doug@
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libssl/ssl_cert.c | 20 | 
1 files changed, 7 insertions, 13 deletions
diff --git a/src/lib/libssl/ssl_cert.c b/src/lib/libssl/ssl_cert.c index cdac7bdb36..7e92812e56 100644 --- a/src/lib/libssl/ssl_cert.c +++ b/src/lib/libssl/ssl_cert.c  | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ssl_cert.c,v 1.51 2015/09/11 17:37:47 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_cert.c,v 1.52 2016/03/11 07:08:45 mmcc 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 | * | 
| @@ -308,8 +308,7 @@ err: | |||
| 308 | EC_KEY_free(ret->ecdh_tmp); | 308 | EC_KEY_free(ret->ecdh_tmp); | 
| 309 | 309 | ||
| 310 | for (i = 0; i < SSL_PKEY_NUM; i++) { | 310 | for (i = 0; i < SSL_PKEY_NUM; i++) { | 
| 311 | if (ret->pkeys[i].x509 != NULL) | 311 | X509_free(ret->pkeys[i].x509); | 
| 312 | X509_free(ret->pkeys[i].x509); | ||
| 313 | EVP_PKEY_free(ret->pkeys[i].privatekey); | 312 | EVP_PKEY_free(ret->pkeys[i].privatekey); | 
| 314 | } | 313 | } | 
| 315 | free (ret); | 314 | free (ret); | 
| @@ -333,8 +332,7 @@ ssl_cert_free(CERT *c) | |||
| 333 | EC_KEY_free(c->ecdh_tmp); | 332 | EC_KEY_free(c->ecdh_tmp); | 
| 334 | 333 | ||
| 335 | for (i = 0; i < SSL_PKEY_NUM; i++) { | 334 | for (i = 0; i < SSL_PKEY_NUM; i++) { | 
| 336 | if (c->pkeys[i].x509 != NULL) | 335 | X509_free(c->pkeys[i].x509); | 
| 337 | X509_free(c->pkeys[i].x509); | ||
| 338 | EVP_PKEY_free(c->pkeys[i].privatekey); | 336 | EVP_PKEY_free(c->pkeys[i].privatekey); | 
| 339 | } | 337 | } | 
| 340 | 338 | ||
| @@ -400,10 +398,8 @@ ssl_sess_cert_free(SESS_CERT *sc) | |||
| 400 | /* i == 0 */ | 398 | /* i == 0 */ | 
| 401 | if (sc->cert_chain != NULL) | 399 | if (sc->cert_chain != NULL) | 
| 402 | sk_X509_pop_free(sc->cert_chain, X509_free); | 400 | sk_X509_pop_free(sc->cert_chain, X509_free); | 
| 403 | for (i = 0; i < SSL_PKEY_NUM; i++) { | 401 | for (i = 0; i < SSL_PKEY_NUM; i++) | 
| 404 | if (sc->peer_pkeys[i].x509 != NULL) | 402 | X509_free(sc->peer_pkeys[i].x509); | 
| 405 | X509_free(sc->peer_pkeys[i].x509); | ||
| 406 | } | ||
| 407 | 403 | ||
| 408 | DH_free(sc->peer_dh_tmp); | 404 | DH_free(sc->peer_dh_tmp); | 
| 409 | EC_KEY_free(sc->peer_ecdh_tmp); | 405 | EC_KEY_free(sc->peer_ecdh_tmp); | 
| @@ -620,8 +616,7 @@ err: | |||
| 620 | if (sk != NULL) | 616 | if (sk != NULL) | 
| 621 | sk_X509_NAME_free(sk); | 617 | sk_X509_NAME_free(sk); | 
| 622 | BIO_free(in); | 618 | BIO_free(in); | 
| 623 | if (x != NULL) | 619 | X509_free(x); | 
| 624 | X509_free(x); | ||
| 625 | if (ret != NULL) | 620 | if (ret != NULL) | 
| 626 | ERR_clear_error(); | 621 | ERR_clear_error(); | 
| 627 | return (ret); | 622 | return (ret); | 
| @@ -679,8 +674,7 @@ err: | |||
| 679 | ret = 0; | 674 | ret = 0; | 
| 680 | } | 675 | } | 
| 681 | BIO_free(in); | 676 | BIO_free(in); | 
| 682 | if (x != NULL) | 677 | X509_free(x); | 
| 683 | X509_free(x); | ||
| 684 | 678 | ||
| 685 | (void)sk_X509_NAME_set_cmp_func(stack, oldcmp); | 679 | (void)sk_X509_NAME_set_cmp_func(stack, oldcmp); | 
| 686 | 680 | ||
