diff options
author | Rich Salz <rsalz@openssl.org> | 2015-04-11 10:22:36 -0400 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2015-04-11 10:22:36 -0400 |
commit | 62adbcee392ba1061bf213174e8c59728e00860e (patch) | |
tree | b0a97dcc7e5d9ff3a60b638e45b254a234b83a41 /ssl | |
parent | e2010b202a52be9120582537845f422a60d5d8c0 (diff) |
free NULL cleanup 10
Avoid checking for NULL before calling free functions. This gets
ssl.*free:
ssl_sess_cert_free ssl_free ssl_excert_free ssl_cert_free
SSL_free SSL_SRP_CTX_free SSL_SESSION_free SSL_CTX_free
SSL_CTX_SRP_CTX_free SSL_CONF_CTX_free
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Diffstat (limited to 'ssl')
-rw-r--r-- | ssl/bio_ssl.c | 5 | ||||
-rw-r--r-- | ssl/s3_clnt.c | 3 | ||||
-rw-r--r-- | ssl/ssl_lib.c | 4 | ||||
-rw-r--r-- | ssl/ssl_sess.c | 9 |
4 files changed, 8 insertions, 13 deletions
diff --git a/ssl/bio_ssl.c b/ssl/bio_ssl.c index 0344b7e35b..7cf941d15b 100644 --- a/ssl/bio_ssl.c +++ b/ssl/bio_ssl.c @@ -125,7 +125,7 @@ static int ssl_free(BIO *a) if (bs->ssl != NULL) SSL_shutdown(bs->ssl); if (a->shutdown) { - if (a->init && (bs->ssl != NULL)) + if (a->init) SSL_free(bs->ssl); a->init = 0; a->flags = 0; @@ -416,8 +416,7 @@ static long ssl_ctrl(BIO *b, int cmd, long num, void *ptr) break; case BIO_CTRL_DUP: dbio = (BIO *)ptr; - if (((BIO_SSL *)dbio->ptr)->ssl != NULL) - SSL_free(((BIO_SSL *)dbio->ptr)->ssl); + SSL_free(((BIO_SSL *)dbio->ptr)->ssl); ((BIO_SSL *)dbio->ptr)->ssl = SSL_dup(ssl); ((BIO_SSL *)dbio->ptr)->renegotiate_count = ((BIO_SSL *)b->ptr)->renegotiate_count; diff --git a/ssl/s3_clnt.c b/ssl/s3_clnt.c index 6da125897d..404f7f9f8f 100644 --- a/ssl/s3_clnt.c +++ b/ssl/s3_clnt.c @@ -1215,8 +1215,7 @@ int ssl3_get_server_certificate(SSL *s) if (sc == NULL) goto err; - if (s->session->sess_cert) - ssl_sess_cert_free(s->session->sess_cert); + ssl_sess_cert_free(s->session->sess_cert); s->session->sess_cert = sc; sc->cert_chain = sk; diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index abb3fd301f..cb7bd86e2a 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c @@ -393,8 +393,7 @@ SSL *SSL_new(SSL_CTX *ctx) return (s); err: - if (s != NULL) - SSL_free(s); + SSL_free(s); SSLerr(SSL_F_SSL_NEW, ERR_R_MALLOC_FAILURE); return (NULL); } @@ -2992,6 +2991,7 @@ int ssl_init_wbio_buffer(SSL *s, int push) void ssl_free_wbio_buffer(SSL *s) { + /* callers ensure s is never null */ if (s->bbio == NULL) return; diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index 9273eb6c48..24e5d259d4 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -292,10 +292,8 @@ int ssl_get_new_session(SSL *s, int session) else ss->timeout = s->session_ctx->session_timeout; - if (s->session != NULL) { - SSL_SESSION_free(s->session); - s->session = NULL; - } + SSL_SESSION_free(s->session); + s->session = NULL; if (session) { if (s->version == SSL3_VERSION) { @@ -578,8 +576,7 @@ int ssl_get_prev_session(SSL *s, unsigned char *session_id, int len, s->session_ctx->stats.sess_hit++; - if (s->session != NULL) - SSL_SESSION_free(s->session); + SSL_SESSION_free(s->session); s->session = ret; s->verify_result = s->session->verify_result; return 1; |