aboutsummaryrefslogtreecommitdiffstats
path: root/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
diff options
context:
space:
mode:
authorMax <post@wickenrode.com>2015-03-21 00:04:02 +0100
committerMax <post@wickenrode.com>2015-03-21 00:09:42 +0100
commit6b32b225106245755e9fe4543e9eb4883cbb9c2b (patch)
tree079aeff82e13352417c082533ed5acd645962f12 /Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
parent9f2e5a6b0fafeec8f94dfa00414b0016b12194ba (diff)
downloadsequelpro-6b32b225106245755e9fe4543e9eb4883cbb9c2b.tar.gz
sequelpro-6b32b225106245755e9fe4543e9eb4883cbb9c2b.tar.bz2
sequelpro-6b32b225106245755e9fe4543e9eb4883cbb9c2b.zip
Allow to set SSL cipher list in SPMySQL
Diffstat (limited to 'Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m')
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m9
1 files changed, 8 insertions, 1 deletions
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
index 0d9d16ff..9fa5a9c8 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
@@ -65,6 +65,7 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
@synthesize sslKeyFilePath;
@synthesize sslCertificatePath;
@synthesize sslCACertificatePath;
+@synthesize sslCipherList;
@synthesize timeout;
@synthesize useKeepAlive;
@synthesize keepAliveInterval;
@@ -217,6 +218,8 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
[proxy setConnectionStateChangeSelector:NULL delegate:nil];
[proxy release];
}
+
+ [self setSslCipherList:nil];
// Ensure the query lock is unlocked, thereafter setting to nil in case of pending calls
if ([connectionLock condition] != SPMySQLConnectionIdle) {
@@ -546,6 +549,7 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
const char *theSSLKeyFilePath = NULL;
const char *theSSLCertificatePath = NULL;
const char *theCACertificatePath = NULL;
+ const char *theSSLCiphers = SPMySQLSSLPermissibleCiphers;
if (sslKeyFilePath) {
theSSLKeyFilePath = [[sslKeyFilePath stringByExpandingTildeInPath] UTF8String];
@@ -556,8 +560,11 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
if (sslCACertificatePath) {
theCACertificatePath = [[sslCACertificatePath stringByExpandingTildeInPath] UTF8String];
}
+ if(sslCipherList) {
+ theSSLCiphers = [sslCipherList UTF8String];
+ }
- mysql_ssl_set(theConnection, theSSLKeyFilePath, theSSLCertificatePath, theCACertificatePath, NULL, SPMySQLSSLPermissibleCiphers);
+ mysql_ssl_set(theConnection, theSSLKeyFilePath, theSSLCertificatePath, theCACertificatePath, NULL, theSSLCiphers);
}
MYSQL *connectionStatus = mysql_real_connect(theConnection, theHost, theUsername, thePassword, NULL, (unsigned int)port, theSocket, SPMySQLConnectionOptions);