summaryrefslogtreecommitdiffstats
path: root/ssl
diff options
context:
space:
mode:
authorPascal Cuoq <cuoq@trust-in-soft.com>2015-11-23 00:13:15 +0100
committerKurt Roeckx <kurt@roeckx.be>2015-11-24 22:01:35 +0100
commita60c151a7d478b74ae88186aca251d17b84a1e2f (patch)
tree4408c4e3a155fd88a21e7b6573eccfd0cbefa146 /ssl
parent00f5263b78910da233ed0258bf8ea8fd1758abbc (diff)
ssl3_free(): Return if it wasn't created
If somewhere in SSL_new() there is a memory allocation failure, ssl3_free() can get called with s->s3 still being NULL. Patch also provided by Willy Tarreau <wtarreau@haproxy.com> Signed-off-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Viktor Dukhovni <openssl-users@dukhovni.org>
Diffstat (limited to 'ssl')
-rw-r--r--ssl/s3_lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c
index f40b143793..5ad9863121 100644
--- a/ssl/s3_lib.c
+++ b/ssl/s3_lib.c
@@ -3880,7 +3880,7 @@ int ssl3_new(SSL *s)
void ssl3_free(SSL *s)
{
- if (s == NULL)
+ if (s == NULL || s->s3 == NULL)
return;
ssl3_cleanup_key_block(s);