26 lines
1.3 KiB
Diff
26 lines
1.3 KiB
Diff
|
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-01 08:51:30.550913756 -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/pki/tls/certs/ca-bundle.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(QLatin1String(":/trolltech/network/ssl/qt-ca-bundle.crt"));
|
||
|
if (caBundle.open(QIODevice::ReadOnly | QIODevice::Text))
|
||
|
return QSslCertificate::fromDevice(&caBundle);
|
||
|
|