TCF Agent: fixed memory leak in SSL code
diff --git a/agent/tcf/framework/channel_tcp.c b/agent/tcf/framework/channel_tcp.c
index 489db67..b478368 100644
--- a/agent/tcf/framework/channel_tcp.c
+++ b/agent/tcf/framework/channel_tcp.c
@@ -933,12 +933,12 @@
err = set_errno(ERR_OTHER, "DH_check: not a safe prime");
}
}
- if (err) {
- DH_free(ssl_dh);
- ssl_dh = NULL;
- }
}
if (!err && !SSL_CTX_set_tmp_dh(ssl_ctx, ssl_dh)) err = set_ssl_errno();
+ if (ssl_dh != NULL) {
+ DH_free(ssl_dh);
+ ssl_dh = NULL;
+ }
if (err) {
SSL_CTX_free(ssl_ctx);
ssl_ctx = NULL;