diff options
author | Pascal Cuoq <cuoq@trust-in-soft.com> | 2015-11-23 00:13:15 +0100 |
---|---|---|
committer | Kurt Roeckx <kurt@roeckx.be> | 2015-11-24 22:01:35 +0100 |
commit | a60c151a7d478b74ae88186aca251d17b84a1e2f (patch) | |
tree | 4408c4e3a155fd88a21e7b6573eccfd0cbefa146 | |
parent | 00f5263b78910da233ed0258bf8ea8fd1758abbc (diff) | |
download | openssl-a60c151a7d478b74ae88186aca251d17b84a1e2f.tar.gz |
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>
-rw-r--r-- | ssl/s3_lib.c | 2 |
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); |