190130
From 0e3871a57b7a621444dc5cfd49935a1e412f6436 Mon Sep 17 00:00:00 2001
2072c5
From: Mohit Agrawal <moagrawa@redhat.com>
2072c5
Date: Mon, 8 Jun 2020 13:27:50 +0530
190130
Subject: [PATCH 433/449] socket: Resolve ssl_ctx leak for a brick while only
2072c5
 mgmt SSL is enabled
2072c5
2072c5
Problem: While only mgmt SSL is enabled for a brick process use_ssl flag
2072c5
         is false for a brick process and socket api's cleanup ssl_ctx only
2072c5
         while use_ssl and ssl_ctx both are valid
2072c5
2072c5
Solution: To avoid a leak check only ssl_ctx, if it is valid cleanup
2072c5
          ssl_ctx
2072c5
2072c5
> Fixes: #1196
2072c5
> Change-Id: I2f4295478f4149dcb7d608ea78ee5104f28812c3
2072c5
> Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
2072c5
> (Cherry pick from commit 9873baee34afdf0c20f5fc98a7dbf2a9f07447e2)
2072c5
> (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/24366/)
2072c5
190130
BUG: 1810924
2072c5
Change-Id: I2f4295478f4149dcb7d608ea78ee5104f28812c3
2072c5
Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
190130
Reviewed-on: https://code.engineering.redhat.com/gerrit/202625
2072c5
Tested-by: RHGS Build Bot <nigelb@redhat.com>
2072c5
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com>
2072c5
---
2072c5
 rpc/rpc-transport/socket/src/socket.c | 4 ++--
2072c5
 1 file changed, 2 insertions(+), 2 deletions(-)
2072c5
2072c5
diff --git a/rpc/rpc-transport/socket/src/socket.c b/rpc/rpc-transport/socket/src/socket.c
2072c5
index 226b2e2..54cd5df 100644
2072c5
--- a/rpc/rpc-transport/socket/src/socket.c
2072c5
+++ b/rpc/rpc-transport/socket/src/socket.c
2072c5
@@ -1163,7 +1163,7 @@ __socket_reset(rpc_transport_t *this)
2072c5
         SSL_free(priv->ssl_ssl);
2072c5
         priv->ssl_ssl = NULL;
2072c5
     }
2072c5
-    if (priv->use_ssl && priv->ssl_ctx) {
2072c5
+    if (priv->ssl_ctx) {
2072c5
         SSL_CTX_free(priv->ssl_ctx);
2072c5
         priv->ssl_ctx = NULL;
2072c5
     }
2072c5
@@ -4685,7 +4685,7 @@ fini(rpc_transport_t *this)
2072c5
             SSL_free(priv->ssl_ssl);
2072c5
             priv->ssl_ssl = NULL;
2072c5
         }
2072c5
-        if (priv->use_ssl && priv->ssl_ctx) {
2072c5
+        if (priv->ssl_ctx) {
2072c5
             SSL_CTX_free(priv->ssl_ctx);
2072c5
             priv->ssl_ctx = NULL;
2072c5
         }
2072c5
-- 
2072c5
1.8.3.1
2072c5