summaryrefslogtreecommitdiff
path: root/src/lib/libssl/s3_srvr.c
diff options
context:
space:
mode:
authorjsing <>2014-06-07 14:10:35 +0000
committerjsing <>2014-06-07 14:10:35 +0000
commitf343af817aa3c5121ccee178feb8ac0fa700172b (patch)
tree827d5a799fe09599039564d7a3a27bf8ba15a731 /src/lib/libssl/s3_srvr.c
parent8e572c76ea1f88213041d8394aa478381641e07c (diff)
downloadopenbsd-f343af817aa3c5121ccee178feb8ac0fa700172b.tar.gz
openbsd-f343af817aa3c5121ccee178feb8ac0fa700172b.tar.bz2
openbsd-f343af817aa3c5121ccee178feb8ac0fa700172b.zip
The DH_free, EC_KEY_free, EVP_PKEY_free and RSA_free functions all have
implicit NULL checks, so there is no point ensuring that the pointer is non-NULL before calling them.
Diffstat (limited to 'src/lib/libssl/s3_srvr.c')
-rw-r--r--src/lib/libssl/s3_srvr.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/lib/libssl/s3_srvr.c b/src/lib/libssl/s3_srvr.c
index 552f8290b5..bd22569ef0 100644
--- a/src/lib/libssl/s3_srvr.c
+++ b/src/lib/libssl/s3_srvr.c
@@ -866,14 +866,10 @@ ssl3_check_client_hello(SSL *s)
866 * which will now be aborted. (A full SSL_clear would be too 866 * which will now be aborted. (A full SSL_clear would be too
867 * much.) 867 * much.)
868 */ 868 */
869 if (s->s3->tmp.dh != NULL) { 869 DH_free(s->s3->tmp.dh);
870 DH_free(s->s3->tmp.dh); 870 s->s3->tmp.dh = NULL;
871 s->s3->tmp.dh = NULL; 871 EC_KEY_free(s->s3->tmp.ecdh);
872 } 872 s->s3->tmp.ecdh = NULL;
873 if (s->s3->tmp.ecdh != NULL) {
874 EC_KEY_free(s->s3->tmp.ecdh);
875 s->s3->tmp.ecdh = NULL;
876 }
877 s->s3->flags |= SSL3_FLAGS_SGC_RESTART_DONE; 873 s->s3->flags |= SSL3_FLAGS_SGC_RESTART_DONE;
878 return (2); 874 return (2);
879 } 875 }
@@ -2465,7 +2461,7 @@ ssl3_get_client_key_exchange(SSL *s)
2465 ret = 2; 2461 ret = 2;
2466 else 2462 else
2467 ret = 1; 2463 ret = 1;
2468 gerr: 2464gerr:
2469 EVP_PKEY_free(client_pub_pkey); 2465 EVP_PKEY_free(client_pub_pkey);
2470 EVP_PKEY_CTX_free(pkey_ctx); 2466 EVP_PKEY_CTX_free(pkey_ctx);
2471 if (ret) 2467 if (ret)
@@ -2485,8 +2481,7 @@ f_err:
2485err: 2481err:
2486 EVP_PKEY_free(clnt_pub_pkey); 2482 EVP_PKEY_free(clnt_pub_pkey);
2487 EC_POINT_free(clnt_ecpoint); 2483 EC_POINT_free(clnt_ecpoint);
2488 if (srvr_ecdh != NULL) 2484 EC_KEY_free(srvr_ecdh);
2489 EC_KEY_free(srvr_ecdh);
2490 BN_CTX_free(bn_ctx); 2485 BN_CTX_free(bn_ctx);
2491 return (-1); 2486 return (-1);
2492} 2487}