Add a new QT_NO_SSL feature macro.
authorRichard Moore <rich@kde.org>
Tue, 3 Jan 2012 14:08:03 +0000 (14:08 +0000)
committerQt by Nokia <qt-info@nokia.com>
Fri, 6 Jan 2012 10:19:23 +0000 (11:19 +0100)
At the moment users of Qt must detect if it was compiled with SSL
support by testing for QT_NO_OPENSSL. This means that any code that is
conditionally compiled this way is tied to the presence of the openssl
backend. This commit makes it possible to implement new SSL backends
during the Qt5 lifetime without breaking this code. People can still
test for QT_NO_OPENSSL if they really need openssl, but if they simply
want to know if there's SSL support at all they should use this define
instead.

In addition, this commit changes the public API headers to use the new
define.

Change-Id: Ib57a71aa65836ac9351f120a487bfeb8009d9515
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
configure
configure.exe
src/network/ssl/qsslcertificate.h
src/network/ssl/qsslcertificateextension.h
src/network/ssl/qsslcipher.h
src/network/ssl/qsslconfiguration.h
src/network/ssl/qsslerror.h
src/network/ssl/qsslkey.h
src/network/ssl/qsslsocket.h
tools/configure/configureapp.cpp

index 9288de5..ce8f99c 100755 (executable)
--- a/configure
+++ b/configure
@@ -7790,7 +7790,7 @@ QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STYLE_S60"
 [ "$CFG_INOTIFY" = "no" ]    && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_INOTIFY"
 [ "$CFG_NAS" = "no" ]        && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NAS"
 [ "$CFG_NIS" = "no" ]        && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NIS"
-[ "$CFG_OPENSSL" = "no" ]    && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENSSL"
+[ "$CFG_OPENSSL" = "no" ]    && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENSSL QT_NO_SSL"
 [ "$CFG_OPENSSL" = "linked" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LINKED_OPENSSL"
 
 [ "$CFG_SM" = "no" ]         && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SESSIONMANAGER"
index 6048dc5..e27966e 100644 (file)
Binary files a/configure.exe and b/configure.exe differ
index 22721ad..3aa7075 100644 (file)
@@ -58,7 +58,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 class QDateTime;
 class QIODevice;
@@ -152,7 +152,7 @@ Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslCertificate &certific
 Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, QSslCertificate::SubjectInfo info);
 #endif
 
-#endif // QT_NO_OPENSSL
+#endif // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index 200ae3e..6c1d219 100644 (file)
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 class QSslCertificateExtensionPrivate;
 
@@ -78,7 +78,7 @@ private:
     QSharedDataPointer<QSslCertificateExtensionPrivate> d;
 };
 
-#endif // QT_NO_OPENSSL
+#endif // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index 112b775..8d58fa5 100644 (file)
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 class QSslCipherPrivate;
 class Q_NETWORK_EXPORT QSslCipher
@@ -88,7 +88,7 @@ class QDebug;
 Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslCipher &cipher);
 #endif
 
-#endif // QT_NO_OPENSSL
+#endif // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index 961c821..37df073 100644 (file)
@@ -67,7 +67,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 template<typename T> class QList;
 class QSslCertificate;
@@ -132,7 +132,7 @@ private:
     QSharedDataPointer<QSslConfigurationPrivate> d;
 };
 
-#endif  // QT_NO_OPENSSL
+#endif  // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index 552d91d..0bdc230 100644 (file)
@@ -52,7 +52,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 class QSslErrorPrivate;
 class Q_NETWORK_EXPORT QSslError
@@ -115,7 +115,7 @@ Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslError &error);
 Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslError::SslError &error);
 #endif
 
-#endif // QT_NO_OPENSSL
+#endif // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index eadb79d..d7d52fa 100644 (file)
@@ -54,7 +54,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 template <typename A, typename B> struct QPair;
 
@@ -103,7 +103,7 @@ class QDebug;
 Q_NETWORK_EXPORT QDebug operator<<(QDebug debug, const QSslKey &key);
 #endif
 
-#endif // QT_NO_OPENSSL
+#endif // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index 9a0500c..7dc888b 100644 (file)
@@ -45,7 +45,7 @@
 
 #include <QtCore/qlist.h>
 #include <QtCore/qregexp.h>
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 #   include <QtNetwork/qtcpsocket.h>
 #   include <QtNetwork/qsslerror.h>
 #endif
@@ -56,7 +56,7 @@ QT_BEGIN_NAMESPACE
 
 QT_MODULE(Network)
 
-#ifndef QT_NO_OPENSSL
+#ifndef QT_NO_SSL
 
 class QDir;
 class QSslCipher;
@@ -217,7 +217,7 @@ private:
     friend class QSslSocketBackendPrivate;
 };
 
-#endif // QT_NO_OPENSSL
+#endif // QT_NO_SSL
 
 QT_END_NAMESPACE
 
index c3ea048..bcc86cb 100644 (file)
@@ -2915,7 +2915,10 @@ void Configure::generateConfigfiles()
         if (dictionary["EXCEPTIONS"] == "no")        qconfigList += "QT_NO_EXCEPTIONS";
         if (dictionary["OPENGL"] == "no")            qconfigList += "QT_NO_OPENGL";
         if (dictionary["OPENVG"] == "no")            qconfigList += "QT_NO_OPENVG";
-        if (dictionary["OPENSSL"] == "no")           qconfigList += "QT_NO_OPENSSL";
+        if (dictionary["OPENSSL"] == "no") {
+            qconfigList += "QT_NO_OPENSSL";
+            qconfigList += "QT_NO_SSL";
+        }
         if (dictionary["OPENSSL"] == "linked")       qconfigList += "QT_LINKED_OPENSSL";
         if (dictionary["DBUS"] == "no")              qconfigList += "QT_NO_DBUS";
         if (dictionary["WEBKIT"] == "no")            qconfigList += "QT_NO_WEBKIT";