summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernd Edlinger <bernd.edlinger@hotmail.de>2016-12-22 10:12:03 +0100
committerKurt Roeckx <kurt@roeckx.be>2017-01-10 22:34:17 +0100
commit0ecb682a674c69caee4b8da1c08d23305f484cd8 (patch)
tree9dc3231a2ddb3679ace1f9d8b4b404fa95ecd3ae
parent2045c58116c11c990eee009e29cf72fc92c47daa (diff)
downloadopenssl-new-0ecb682a674c69caee4b8da1c08d23305f484cd8.tar.gz
Fix error handling in SSL_CTX_new
Dont free rbuf_freelist here, SSL_CTX_free will do that. Signed-off-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Rich Salz <rsalz@openssl.org> GH: #2129
-rw-r--r--ssl/ssl_lib.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index 42b980ac26..f8054dae6b 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -2030,10 +2030,8 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth)
ret->rbuf_freelist->len = 0;
ret->rbuf_freelist->head = NULL;
ret->wbuf_freelist = OPENSSL_malloc(sizeof(SSL3_BUF_FREELIST));
- if (!ret->wbuf_freelist) {
- OPENSSL_free(ret->rbuf_freelist);
+ if (!ret->wbuf_freelist)
goto err;
- }
ret->wbuf_freelist->chunklen = 0;
ret->wbuf_freelist->len = 0;
ret->wbuf_freelist->head = NULL;