summaryrefslogtreecommitdiffstats
path: root/tests/auto/network
diff options
context:
space:
mode:
authorTimur Pocheptsov <timur.pocheptsov@qt.io>2020-06-12 11:11:08 +0200
committerTimur Pocheptsov <timur.pocheptsov@qt.io>2020-07-01 11:26:15 +0200
commit37d9e44cd010c9844b0dbe2b25f307eab15b3ea8 (patch)
tree930a202df40ba87e2d37532b07dd21be847531c1 /tests/auto/network
parent4fbb040f754b7db310018394dd7ea6f5c997d50e (diff)
QSslConfiguration::setCiphers - introduce the overload taking QString
We had such an overloaded version in QSslSocket, it was deprecated without providing any alternative. Now this function has some use and may be introduced in Qt6, as QSslConfiguration::setCiphers(const QString &). Last but not the least - a useless and strange auto-test was removed (it was creating a list of 5 QSslCiphers each with isNull() == true). That's becasue '!MD5' or 'ALL' (for example) is not a cipher to be found in supportedCiphers. Change-Id: I47eb4c0faa9b52885e883751dd992cd9cb3d26fe Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'tests/auto/network')
-rw-r--r--tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp26
1 files changed, 23 insertions, 3 deletions
diff --git a/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp b/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp
index 97a01efdd3..864d8db008 100644
--- a/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp
+++ b/tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp
@@ -804,10 +804,30 @@ void tst_QSslSocket::ciphers()
socket.setSslConfiguration(sslConfig);
QCOMPARE(socket.sslConfiguration().ciphers(), QSslConfiguration::defaultConfiguration().ciphers());
- // Task 164356
- sslConfig.setCiphers({QSslCipher("ALL"), QSslCipher("!ADH"), QSslCipher("!LOW"),
- QSslCipher("!EXP"), QSslCipher("!MD5"), QSslCipher("@STRENGTH")});
+ sslConfig = QSslConfiguration::defaultConfiguration();
+ QList<QSslCipher> ciphers;
+ QString ciphersAsString;
+ const auto &supported = sslConfig.supportedCiphers();
+ for (const auto &cipher : supported) {
+ if (cipher.isNull() || !cipher.name().length())
+ continue;
+ if (ciphers.size() > 0)
+ ciphersAsString += QStringLiteral(":");
+ ciphersAsString += cipher.name();
+ ciphers.append(cipher);
+ if (ciphers.size() == 3) // 3 should be enough.
+ break;
+ }
+
+ if (!ciphers.size())
+ QSKIP("No proper ciphersuite was found to test 'setCiphers'");
+
+ sslConfig.setCiphers(ciphersAsString);
+ socket.setSslConfiguration(sslConfig);
+ QCOMPARE(ciphers, socket.sslConfiguration().ciphers());
+ sslConfig.setCiphers(ciphers);
socket.setSslConfiguration(sslConfig);
+ QCOMPARE(ciphers, socket.sslConfiguration().ciphers());
}
void tst_QSslSocket::connectToHostEncrypted()