[arch-commits] Commit in qt/trunk (PKGBUILD ca-certificates.patch)

Pierre Schmitz pierre at archlinux.org
Sat Oct 3 14:03:27 UTC 2009


    Date: Saturday, October 3, 2009 @ 10:03:26
  Author: pierre
Revision: 53833

use the system cert bundle and not a build-in one (thansk to fedora)

Added:
  qt/trunk/ca-certificates.patch
Modified:
  qt/trunk/PKGBUILD

-----------------------+
 PKGBUILD              |   12 ++++++++----
 ca-certificates.patch |   25 +++++++++++++++++++++++++
 2 files changed, 33 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2009-10-03 13:47:15 UTC (rev 53832)
+++ PKGBUILD	2009-10-03 14:03:26 UTC (rev 53833)
@@ -3,14 +3,15 @@
 
 pkgname=qt
 pkgver=4.5.3
-pkgrel=1
+pkgrel=2
 _kdeqtver=8d1fe78bf12d9c21dfdf00ef24c3d6ce9cc89f0b
 pkgdesc='A cross-platform application and UI framework'
 arch=('i686' 'x86_64')
 url='http://www.qtsoftware.com/'
 license=('GPL3' 'LGPL')
 depends=('libpng' 'mesa' 'fontconfig' 'libtiff>=3.8.2-5' 'libmng>=1.0.10-2' 'sqlite3' 'xdg-utils' 'hicolor-icon-theme'
-         'libxrandr' 'glib2' 'libxi' 'dbus' 'libxcursor' 'libxinerama' 'libxrender' 'gstreamer0.10-base-plugins')
+         'libxrandr' 'glib2' 'libxi' 'dbus' 'libxcursor' 'libxinerama' 'libxrender' 'gstreamer0.10-base-plugins'
+         'ca-certificates')
 optdepends=('postgresql-libs' 'libmysqlclient' 'unixodbc')
 makedepends=('inputproto' 'postgresql-libs' 'mysql' 'unixodbc' 'cups' 'libxfixes' 'gtk2')
 install=qt.install
@@ -23,7 +24,7 @@
         "ftp://ftp.archlinux.org/other/kde-qt/kde-qt-${_kdeqtver}.patch.gz"
 	'gstreamer-logo.png'
         'assistant.desktop' 'designer.desktop' 'linguist.desktop' 'qtconfig.desktop'
-        'qdoc3.patch' 'phonon.patch')
+        'qdoc3.patch' 'phonon.patch' 'ca-certificates.patch')
 md5sums=('3988cf9af68be2df8a8000ede231de9b'
          'b38b9bc91b4e5451cad7a922e246bd14'
          'f0c26f76acf8b6a3297cfb31f872b0b7'
@@ -32,7 +33,8 @@
          '668331d9798a0e2b94381efb7be4c513'
          'c29f2993d6a0f73d756d2fa36e130e1c'
          'a7e450751f42bdff17e57fdc4af72a18'
-         'ca0debc49d3505423e3b5742fdbfd852')
+         'ca0debc49d3505423e3b5742fdbfd852'
+         'd5c4cad7af93f1d736d4569a207bd739')
 
 _create-kdeqt-patch() {
 	local codir=$(mktemp -d)
@@ -60,6 +62,8 @@
 	patch -p1 -i $srcdir/qdoc3.patch || return 1
 	# install service files needed by KDE
 	patch -p1 -i $srcdir/phonon.patch || return 1
+	# use system ssl cert bundle
+	patch -p1 -i $srcdir/ca-certificates.patch || return 1
 
 	sed -i "s|-O2|$CXXFLAGS|" mkspecs/common/g++.conf
 	sed -i "/^QMAKE_RPATH/s| -Wl,-rpath,||g" mkspecs/common/g++.conf

Added: ca-certificates.patch
===================================================================
--- ca-certificates.patch	                        (rev 0)
+++ ca-certificates.patch	2009-10-03 14:03:26 UTC (rev 53833)
@@ -0,0 +1,25 @@
+diff -up qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp.system_ca_certificates qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp
+--- qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp.system_ca_certificates	2009-09-29 06:01:38.000000000 -0500
++++ qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp	2009-10-02 11:20:10.674662746 -0500
+@@ -482,8 +482,20 @@ void QSslSocketPrivate::resetDefaultCiph
+ 
+ QList<QSslCertificate> QSslSocketPrivate::systemCaCertificates()
+ {
++
++    QFile caBundle;
++
++#ifdef Q_OS_UNIX
++    // Check known locations for the system's default bundle.  ### On Windows,
++    // we should use CAPI to find the bundle, and not rely on default unix
++    // locations.
++    caBundle.setFileName(QLatin1String("/etc/ssl/certs/ca-certificates.crt"));
++    if (caBundle.open(QIODevice::ReadOnly | QIODevice::Text))
++       return QSslCertificate::fromDevice(&caBundle);
++#endif
++
+     // Qt provides a default bundle of certificates
+-    QFile caBundle(QLatin1String(":/trolltech/network/ssl/qt-ca-bundle.crt"));
++    caBundle.setFileName(QLatin1String(":/trolltech/network/ssl/qt-ca-bundle.crt"));
+     if (caBundle.open(QIODevice::ReadOnly | QIODevice::Text))
+         return QSslCertificate::fromDevice(&caBundle);
+ 




More information about the arch-commits mailing list