Blob Blame History Raw
mysql 5.5 does not export a HAVE_OPENSSL symbol, thus breaking MySQL-python's
rather-misguided-anyway conditional compilation for SSL support.  Since we
have no intention of ever shipping a non-SSL-enabled mysql in Fedora/RHEL,
we can just drop the conditionals, pending some other fix upstream.
(Since mysql_ssl_set is supposed to exist anyway, this might well be a
suitable fix for upstream too.)


diff -Naur MySQL-python-1.2.3.orig/_mysql.c MySQL-python-1.2.3/_mysql.c
--- MySQL-python-1.2.3.orig/_mysql.c	2010-06-17 03:21:56.000000000 -0400
+++ MySQL-python-1.2.3/_mysql.c	2012-07-14 16:49:31.590349235 -0400
@@ -475,10 +475,8 @@
 	MYSQL *conn = NULL;
 	PyObject *conv = NULL;
 	PyObject *ssl = NULL;
-#if HAVE_OPENSSL
 	char *key = NULL, *cert = NULL, *ca = NULL,
 		*capath = NULL, *cipher = NULL;
-#endif
 	char *host = NULL, *user = NULL, *passwd = NULL,
 		*db = NULL, *unix_socket = NULL;
 	unsigned int port = 0;
@@ -519,18 +517,12 @@
         PyErr_Clear();}
 
 	if (ssl) {
-#if HAVE_OPENSSL
 		PyObject *value = NULL;
 		_stringsuck(ca, value, ssl);
 		_stringsuck(capath, value, ssl);
 		_stringsuck(cert, value, ssl);
 		_stringsuck(key, value, ssl);
 		_stringsuck(cipher, value, ssl);
-#else
-		PyErr_SetString(_mysql_NotSupportedError,
-				"client library does not have SSL support");
-		return -1;
-#endif
 	}
 
 	Py_BEGIN_ALLOW_THREADS ;
@@ -556,11 +548,9 @@
 	if (local_infile != -1)
 		mysql_options(&(self->connection), MYSQL_OPT_LOCAL_INFILE, (char *) &local_infile);
 
-#if HAVE_OPENSSL
 	if (ssl)
 		mysql_ssl_set(&(self->connection),
 			      key, cert, ca, capath, cipher);
-#endif
 
 	conn = mysql_real_connect(&(self->connection), host, user, passwd, db,
 				  port, unix_socket, client_flag);