From 6cb4c8918a0d790b024930615fd2552dd461e374 Mon Sep 17 00:00:00 2001 From: tanushah Date: Wed, 29 Apr 2026 11:49:14 +0530 Subject: [PATCH] Parse SslMode from connection string for MySQL Add logic to extract and set the SslMode property from the calculated connection string if present. Only assign Database.ConnectionString if the calculated string is empty. This improves MySQL connection configuration flexibility. --- .../Database/DatabaseOperations.cs | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/Ginger/GingerCoreNET/Database/DatabaseOperations.cs b/Ginger/GingerCoreNET/Database/DatabaseOperations.cs index 92cca1570..8839172bb 100644 --- a/Ginger/GingerCoreNET/Database/DatabaseOperations.cs +++ b/Ginger/GingerCoreNET/Database/DatabaseOperations.cs @@ -489,7 +489,34 @@ public Boolean Connect(bool displayErrorPopup = false) Password = EncryptionHandler.DecryptwithKey(PassCalculated) }; if (port1.HasValue) my.Port = port1.Value; - Database.ConnectionString = my.ConnectionString; + if (!string.IsNullOrEmpty(ConnectionStringCalculated)) + { + foreach (string segment in ConnectionStringCalculated.Split(';', StringSplitOptions.RemoveEmptyEntries)) + { + int eq = segment.IndexOf('='); + if (eq <= 0) + { + continue; + } + + string key = segment.Substring(0, eq).Trim(); + if (key.Equals("SslMode", StringComparison.OrdinalIgnoreCase)) + { + string value = segment.Substring(eq + 1).Trim(); + if (Enum.TryParse(value, ignoreCase: true, out MySqlSslMode sslMode)) + { + my.SslMode = sslMode; + } + + break; + } + } + } + + if (string.IsNullOrEmpty(ConnectionStringCalculated)) + { + Database.ConnectionString = my.ConnectionString; + } oConn = new MySqlConnection {