[arch-commits] Commit in virtuoso/trunk (PKGBUILD openssl-1.0.patch)

Pierre Schmitz pierre at archlinux.org
Thu Apr 1 06:24:36 UTC 2010


    Date: Thursday, April 1, 2010 @ 02:24:36
  Author: pierre
Revision: 75264

upgpkg: virtuoso 6.1.0-2
openssl/heimdal rebuild

Added:
  virtuoso/trunk/openssl-1.0.patch
Modified:
  virtuoso/trunk/PKGBUILD

-------------------+
 PKGBUILD          |   10 +++-
 openssl-1.0.patch |  114 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 121 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2010-04-01 06:18:53 UTC (rev 75263)
+++ PKGBUILD	2010-04-01 06:24:36 UTC (rev 75264)
@@ -4,7 +4,7 @@
 
 pkgname=virtuoso
 pkgver=6.1.0
-pkgrel=1
+pkgrel=2
 arch=('i686' 'x86_64')
 pkgdesc='A scalable cross-platform server that combines SQL/RDF/XML Data Management with Web Application Server and Web Services Platform functionality'
 url='http://virtuoso.openlinksw.com/wiki/main/Main/'
@@ -12,11 +12,15 @@
 depends=('openssl')
 makedepends=('bison' 'flex')
 options=('!libtool' '!makeflags')
-source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-opensource-${pkgver}.tar.gz")
-md5sums=('49135390d27ab3e445f5e9481ab677bb')
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-opensource-${pkgver}.tar.gz"
+        'openssl-1.0.patch')
+md5sums=('49135390d27ab3e445f5e9481ab677bb'
+         'b4caff9deb6d3f3e4cbbf90967e07360')
 
 build() {
   cd $srcdir/${pkgname}-opensource-${pkgver}
+  # see http://cvs.fedoraproject.org/viewvc/rpms/virtuoso-opensource/devel/
+  patch -p1 -i ${srcdir}/openssl-1.0.patch || return 1
 
   ./configure --prefix=/usr \
     --localstatedir=/var \

Added: openssl-1.0.patch
===================================================================
--- openssl-1.0.patch	                        (rev 0)
+++ openssl-1.0.patch	2010-04-01 06:24:36 UTC (rev 75264)
@@ -0,0 +1,114 @@
+diff -up virtuoso-opensource-5.0.11/libsrc/Dk/Dkernel.c.openssl virtuoso-opensource-5.0.11/libsrc/Dk/Dkernel.c
+--- virtuoso-opensource-5.0.11/libsrc/Dk/Dkernel.c.openssl	2009-04-17 22:07:28.000000000 +0200
++++ virtuoso-opensource-5.0.11/libsrc/Dk/Dkernel.c	2009-08-26 16:03:23.000000000 +0200
+@@ -4798,7 +4798,11 @@ dk_ssl_free (void *old)
+ static void
+ ssl_server_init ()
+ {
++#if (OPENSSL_VERSION_NUMBER >= 0x10000000L)
++  const SSL_METHOD *ssl_server_method = NULL;
++#else
+   SSL_METHOD *ssl_server_method = NULL;
++#endif
+   unsigned char tmp[1024];
+ #ifndef NO_THREAD
+   char err_buf[1024];
+@@ -4888,12 +4892,12 @@ ssl_server_init ()
+       SSL_CTX_set_session_id_context (ssl_server_ctx, (unsigned char *) &session_id_context, sizeof session_id_context);
+ 
+       skCAList = SSL_CTX_get_client_CA_list (ssl_server_ctx);
+-      if (sk_num ((STACK *) skCAList) == 0)
++      if (sk_X509_NAME_num (skCAList) == 0)
+ 	log_warning ("ODBC X509 Client authentication requested but no CA known for verification");
+-      for (i = 0; i < sk_num ((STACK *) skCAList); i++)
++      for (i = 0; i < sk_X509_NAME_num (skCAList); i++)
+ 	{
+ 	  char ca_buf[1024];
+-	  X509_NAME *ca_name = (X509_NAME *) sk_value ((STACK *) skCAList, i);
++	  X509_NAME *ca_name = (X509_NAME *) sk_X509_NAME_value (skCAList, i);
+ 	  if (X509_NAME_oneline (ca_name, ca_buf, sizeof (ca_buf)))
+ 	    log_debug ("ODBC Server Using X509 Client CA %s", ca_buf);
+ 	}
+@@ -5058,7 +5062,7 @@ ssl_setup:
+ 
+   if (ca && ca[0] != 0)
+     {
+-      sk_pop_free ((STACK *) ca_list, (void (*)(void *)) X509_free);
++      sk_X509_pop_free (ca_list, X509_free);
+       ca_list = NULL;
+       ca_list = PEM_load_certs (ca, passwd);
+     }
+@@ -5067,30 +5071,30 @@ ssl_setup:
+     {
+       X509_free (cert);
+       EVP_PKEY_free (pkey);
+-      sk_pop_free ((STACK *) ca_list, (void (*)(void *)) X509_free);
++      sk_X509_pop_free (ca_list, X509_free);
+       return 0;
+     }
+   EVP_PKEY_free (pkey);
+   if (!SSL_use_certificate (ssl, cert))
+     {
+       X509_free (cert);
+-      sk_pop_free ((STACK *) ca_list, (void (*)(void *)) X509_free);
++      sk_X509_pop_free (ca_list, X509_free);
+       return 0;
+     }
+   X509_free (cert);
+ 
+   if (!SSL_check_private_key (ssl))
+     {
+-      sk_pop_free ((STACK *) ca_list, (void (*)(void *)) X509_free);
++      sk_X509_pop_free (ca_list, X509_free);
+       return 0;
+     }
+-  for (i = 0; i < sk_num ((STACK *) ca_list); i++)
++  for (i = 0; i < sk_X509_num (ca_list); i++)
+     {
+-      X509 *ca = (X509 *) sk_value ((STACK *) ca_list, i);
++      X509 *ca = sk_X509_value (ca_list, i);
+       SSL_add_client_CA (ssl, ca);
+       X509_STORE_add_cert (SSL_CTX_get_cert_store (ssl_ctx), ca);
+     }
+-  sk_pop_free ((STACK *) ca_list, (void (*)(void *)) X509_free);
++  sk_X509_pop_free (ca_list, X509_free);
+   return 1;
+ }
+ 
+diff -up virtuoso-opensource-5.0.11/libsrc/Wi/http.c.openssl virtuoso-opensource-5.0.11/libsrc/Wi/http.c
+--- virtuoso-opensource-5.0.11/libsrc/Wi/http.c.openssl	2009-04-19 23:48:56.000000000 +0200
++++ virtuoso-opensource-5.0.11/libsrc/Wi/http.c	2009-08-26 16:28:03.000000000 +0200
+@@ -7601,13 +7601,13 @@ http_set_ssl_listen (dk_session_t * list
+       SSL_CTX_set_client_CA_list (ssl_ctx, skCAList);
+       skCAList = SSL_CTX_get_client_CA_list(ssl_ctx);
+ 
+-      if (sk_num((STACK *) skCAList) == 0)
++      if (sk_X509_NAME_num(skCAList) == 0)
+ 	log_warning ("HTTPS Client authentication requested but no CA known for verification");
+ 
+-      for (i = 0; i < sk_num((STACK *) skCAList); i++)
++      for (i = 0; i < sk_X509_NAME_num(skCAList); i++)
+ 	{
+ 	  char ca_buf[1024];
+-	  X509_NAME *ca_name = (X509_NAME *) sk_value ((STACK *) skCAList, i);
++	  X509_NAME *ca_name = sk_X509_NAME_value (skCAList, i);
+ 	  if (X509_NAME_oneline (ca_name, ca_buf, sizeof (ca_buf)))
+ 	    log_debug ("HTTPS Using X509 Client CA %s", ca_buf);
+ 	}
+@@ -9697,13 +9697,13 @@ http_init_part_two ()
+ 
+ 	  SSL_CTX_set_client_CA_list (ssl_ctx, skCAList);
+ 	  skCAList = SSL_CTX_get_client_CA_list (ssl_ctx);
+-	  if (sk_num((STACK *) skCAList) == 0)
++	  if (sk_X509_NAME_num(skCAList) == 0)
+ 	    log_warning ("HTTPS Client authentication requested but no CA known for verification");
+ 
+-	  for (i = 0; i < sk_num((STACK *) skCAList); i++)
++	  for (i = 0; i < sk_X509_NAME_num(skCAList); i++)
+ 	    {
+ 	      char ca_buf[1024];
+-	      X509_NAME *ca_name = (X509_NAME *) sk_value ((STACK *) skCAList, i);
++	      X509_NAME *ca_name = sk_X509_NAME_value (skCAList, i);
+               if (X509_NAME_oneline (ca_name, ca_buf, sizeof (ca_buf)))
+ 		log_debug ("HTTPS Using X509 Client CA %s", ca_buf);
+ 	    }




More information about the arch-commits mailing list