SOURCES (MYSQL_5_0): mysql-ssl.patch - fix SSL server side, too

arekm arekm at pld-linux.org
Thu Dec 20 23:13:32 CET 2007


Author: arekm                        Date: Thu Dec 20 22:13:32 2007 GMT
Module: SOURCES                       Tag: MYSQL_5_0
---- Log message:
- fix SSL server side, too

---- Files affected:
SOURCES:
   mysql-ssl.patch (1.1.2.1 -> 1.1.2.2) 

---- Diffs:

================================================================
Index: SOURCES/mysql-ssl.patch
diff -u SOURCES/mysql-ssl.patch:1.1.2.1 SOURCES/mysql-ssl.patch:1.1.2.2
--- SOURCES/mysql-ssl.patch:1.1.2.1	Wed Dec 19 15:30:31 2007
+++ SOURCES/mysql-ssl.patch	Thu Dec 20 23:13:26 2007
@@ -1,13 +1,58 @@
-diff -ru mysql-5.0.51.org/vio/viossl.c mysql-5.0.51/vio/viossl.c
+diff -urN mysql-5.0.51.org/vio/viossl.c mysql-5.0.51/vio/viossl.c
 --- mysql-5.0.51.org/vio/viossl.c	2007-11-15 15:07:13.000000000 +0100
-+++ mysql-5.0.51/vio/viossl.c	2007-12-19 15:21:53.211570804 +0100
-@@ -199,6 +199,9 @@
-     vio_blocking(vio, was_blocking, &unused);
-     DBUG_RETURN(1);
++++ mysql-5.0.51/vio/viossl.c	2007-12-20 22:56:38.660942731 +0100
+@@ -172,20 +172,14 @@
+   vio_delete(vio);
+ }
+ 
+-int sslaccept(struct st_VioSSLFd *ptr, Vio *vio, long timeout)
+-{
+-  DBUG_ENTER("sslaccept");
+-  DBUG_RETURN(sslconnect(ptr, vio, timeout));
+-}
+-
+-
+-int sslconnect(struct st_VioSSLFd *ptr, Vio *vio, long timeout)
++static
++int sslprocess(struct st_VioSSLFd *ptr, Vio *vio, long timeout, my_bool accept)
+ {
+   SSL *ssl;
+   my_bool unused;
+   my_bool was_blocking;
+ 
+-  DBUG_ENTER("sslconnect");
++  DBUG_ENTER("sslprocess");
+   DBUG_PRINT("enter", ("ptr: 0x%lx, sd: %d  ctx: 0x%lx",
+                        (long) ptr, vio->sd, (long) ptr->ssl_context));
+ 
+@@ -201,6 +195,12 @@
    }
-+
-+  SSL_set_connect_state(ssl);
-+
    DBUG_PRINT("info", ("ssl: 0x%lx timeout: %ld", (long) ssl, timeout));
    SSL_clear(ssl);
++
++  if (accept)
++	  SSL_set_accept_state(ssl);
++  else
++	  SSL_set_connect_state(ssl);
++
    SSL_SESSION_set_timeout(SSL_get_session(ssl), timeout);
+   SSL_set_fd(ssl, vio->sd);
+ 
+@@ -258,6 +258,17 @@
+   DBUG_RETURN(0);
+ }
+ 
++int sslaccept(struct st_VioSSLFd *ptr, Vio *vio, long timeout)
++{
++  DBUG_ENTER("sslaccept");
++  DBUG_RETURN(sslprocess(ptr, vio, timeout, TRUE));
++}
++
++int sslconnect(struct st_VioSSLFd *ptr, Vio *vio, long timeout)
++{
++  DBUG_ENTER("sslconnect");
++  DBUG_RETURN(sslprocess(ptr, vio, timeout, FALSE));
++}
+ 
+ int vio_ssl_blocking(Vio *vio __attribute__((unused)),
+ 		     my_bool set_blocking_mode,
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/mysql-ssl.patch?r1=1.1.2.1&r2=1.1.2.2&f=u



More information about the pld-cvs-commit mailing list