summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/manual/qssloptions/main.cpp92
-rw-r--r--tests/manual/qssloptions/qssloptions.pro12
2 files changed, 104 insertions, 0 deletions
diff --git a/tests/manual/qssloptions/main.cpp b/tests/manual/qssloptions/main.cpp
new file mode 100644
index 0000000000..7ee3f9ce0c
--- /dev/null
+++ b/tests/manual/qssloptions/main.cpp
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser General Public
+** License version 2.1 as published by the Free Software Foundation and
+** appearing in the file LICENSE.LGPL included in the packaging of this
+** file. Please review the following information to ensure the GNU Lesser
+** General Public License version 2.1 requirements will be met:
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License version 3.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of this
+** file. Please review the following information to ensure the GNU General
+** Public License version 3.0 requirements will be met:
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtNetwork/qsslconfiguration.h>
+#include <QtCore/QCoreApplication>
+#include <QtCore/QTextStream>
+#include <stdio.h>
+
+int main(int argc, char **argv)
+{
+ QCoreApplication app(argc, argv);
+
+ if (argc < 3) {
+ QTextStream out(stdout);
+ out << "Usage: " << argv[0] << " host port [options]" << endl;
+ out << "The options can be one or more of the following:" << endl;
+ out << "enable_empty_fragments" << endl;
+ out << "disable_session_tickets" << endl;
+ out << "disable_compression" << endl;
+ out << "disable_sni" << endl;
+ return 1;
+ }
+
+ QString host = QString::fromLocal8Bit(argv[1]);
+ int port = QString::fromLocal8Bit(argv[2]).toInt();
+
+ QSslConfiguration config = QSslConfiguration::defaultConfiguration();
+
+ for (int i=3; i < argc; i++) {
+ QString option = QString::fromLocal8Bit(argv[i]);
+
+ if (option == QStringLiteral("enable_empty_fragments"))
+ config.setSslOption(QSsl::SslOptionDisableEmptyFragments, false);
+ else if (option == QStringLiteral("disable_session_tickets"))
+ config.setSslOption(QSsl::SslOptionDisableSessionTickets, true);
+ else if (option == QStringLiteral("disable_compression"))
+ config.setSslOption(QSsl::SslOptionDisableCompression, true);
+ else if (option == QStringLiteral("disable_sni"))
+ config.setSslOption(QSsl::SslOptionDisableServerNameIndication, true);
+ }
+
+ QSslConfiguration::setDefaultConfiguration(config);
+
+ QSslSocket socket;
+ //socket.setSslConfiguration(config);
+ socket.connectToHostEncrypted(host, port);
+
+ if ( !socket.waitForEncrypted() ) {
+ qDebug() << socket.errorString();
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/tests/manual/qssloptions/qssloptions.pro b/tests/manual/qssloptions/qssloptions.pro
new file mode 100644
index 0000000000..c1c8446e0f
--- /dev/null
+++ b/tests/manual/qssloptions/qssloptions.pro
@@ -0,0 +1,12 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_qssloptions
+DEPENDPATH += .
+INCLUDEPATH += .
+
+QT -= gui
+QT += network
+
+#CONFIG += release
+
+SOURCES += main.cpp