diff options
author | Matt Caswell <matt@openssl.org> | 2016-12-05 17:31:37 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2016-12-08 17:20:34 +0000 |
commit | 1b0286a385aae88068af796d6d0f4fe907fe66eb (patch) | |
tree | aeb5309645a52c5ad498938ee914e13ec80dfec3 | |
parent | 7caf619f1a7c7901a63b8257ac7133dd1c584243 (diff) | |
download | openssl-1b0286a385aae88068af796d6d0f4fe907fe66eb.tar.gz |
Fix a memory leak
When we call tls_collect_extensions() we need to free up the raw
extensions data later.
Perl changes reviewed by Richard Levitte. Non-perl changes reviewed by Rich
Salz
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
-rw-r--r-- | ssl/statem/statem_clnt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c index c47c9aa518..38b8ecb290 100644 --- a/ssl/statem/statem_clnt.c +++ b/ssl/statem/statem_clnt.c @@ -1352,10 +1352,12 @@ MSG_PROCESS_RETURN tls_process_server_hello(SSL *s, PACKET *pkt) goto f_err; } + OPENSSL_free(extensions); return MSG_PROCESS_CONTINUE_READING; f_err: ssl3_send_alert(s, SSL3_AL_FATAL, al); ossl_statem_set_error(s); + OPENSSL_free(extensions); return MSG_PROCESS_ERROR; } @@ -3117,11 +3119,13 @@ static MSG_PROCESS_RETURN tls_process_encrypted_extensions(SSL *s, PACKET *pkt) rawexts, &al)) goto err; + OPENSSL_free(rawexts); return MSG_PROCESS_CONTINUE_READING; err: ssl3_send_alert(s, SSL3_AL_FATAL, al); ossl_statem_set_error(s); + OPENSSL_free(rawexts); return MSG_PROCESS_ERROR; } |