Free the SSL context first and let the reference counting do its thing.
authorjsing <jsing@openbsd.org>
Mon, 4 Aug 2014 15:48:01 +0000 (15:48 +0000)
committerjsing <jsing@openbsd.org>
Mon, 4 Aug 2014 15:48:01 +0000 (15:48 +0000)
lib/libressl/ressl.c

index bc257bd..c4a1e42 100644 (file)
@@ -102,11 +102,8 @@ ressl_free(struct ressl *ctx)
 void
 ressl_reset(struct ressl *ctx)
 {
-       /* SSL_free frees the SSL context. */
-       if (ctx->ssl_conn != NULL)
-               SSL_free(ctx->ssl_conn);
-       else
-               SSL_CTX_free(ctx->ssl_ctx);
+       SSL_CTX_free(ctx->ssl_ctx);
+       SSL_free(ctx->ssl_conn);
 
        ctx->ssl_conn = NULL;
        ctx->ssl_ctx = NULL;