aboutsummaryrefslogtreecommitdiffstats
path: root/ssl/ssl_sess.c
diff options
context:
space:
mode:
authorRich Salz <rsalz@openssl.org>2015-04-11 16:32:54 -0400
committerRich Salz <rsalz@openssl.org>2015-04-11 16:32:54 -0400
commite0e920b1a063f14f36418f8795c96f2c649400e1 (patch)
treeb1704b3c1e380e01ab8fce7806bbd8d1d6997fa2 /ssl/ssl_sess.c
parenta38537721dfdd853c40b4b4d99b57950075b0178 (diff)
downloadopenssl-e0e920b1a063f14f36418f8795c96f2c649400e1.tar.gz
free NULL cleanup 9
Ongoing work to skip NULL check before calling free routine. This gets: ecp_nistz256_pre_comp_free nistp224_pre_comp_free nistp256_pre_comp_free nistp521_pre_comp_free PKCS7_free PKCS7_RECIP_INFO_free PKCS7_SIGNER_INFO_free sk_PKCS7_pop_free PKCS8_PRIV_KEY_INFO_free PKCS12_free PKCS12_SAFEBAG_free PKCS12_free sk_PKCS12_SAFEBAG_pop_free SSL_CONF_CTX_free SSL_CTX_free SSL_SESSION_free SSL_free ssl_cert_free ssl_sess_cert_free Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Diffstat (limited to 'ssl/ssl_sess.c')
-rw-r--r--ssl/ssl_sess.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c
index 24e5d259d4..a213ea90df 100644
--- a/ssl/ssl_sess.c
+++ b/ssl/ssl_sess.c
@@ -726,8 +726,7 @@ void SSL_SESSION_free(SSL_SESSION *ss)
OPENSSL_cleanse(ss->master_key, sizeof ss->master_key);
OPENSSL_cleanse(ss->session_id, sizeof ss->session_id);
- if (ss->sess_cert != NULL)
- ssl_sess_cert_free(ss->sess_cert);
+ ssl_sess_cert_free(ss->sess_cert);
if (ss->peer != NULL)
X509_free(ss->peer);
if (ss->ciphers != NULL)
@@ -795,18 +794,14 @@ int SSL_set_session(SSL *s, SSL_SESSION *session)
/* CRYPTO_w_lock(CRYPTO_LOCK_SSL); */
CRYPTO_add(&session->references, 1, CRYPTO_LOCK_SSL_SESSION);
- if (s->session != NULL)
- SSL_SESSION_free(s->session);
+ SSL_SESSION_free(s->session);
s->session = session;
s->verify_result = s->session->verify_result;
/* CRYPTO_w_unlock(CRYPTO_LOCK_SSL); */
ret = 1;
} else {
- if (s->session != NULL) {
- SSL_SESSION_free(s->session);
- s->session = NULL;
- }
-
+ SSL_SESSION_free(s->session);
+ s->session = NULL;
meth = s->ctx->method;
if (meth != s->method) {
if (!SSL_set_ssl_method(s, meth))