Make the default ssloptions testable.
Centralise the specification of the default ssloptions to make the code clearer and more testable. Change-Id: I4f4bae72736dd063ee4cd64c6375e82d0600a105 Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com> Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
This commit is contained in:
parent
79923f5b32
commit
3d3fdcd3a5
@ -47,6 +47,9 @@
|
|||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
|
const QSsl::SslOptions QSslConfigurationPrivate::defaultSslOptions = QSsl::SslOptionDisableEmptyFragments
|
||||||
|
|QSsl::SslOptionDisableLegacyRenegotiation;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\class QSslConfiguration
|
\class QSslConfiguration
|
||||||
\brief The QSslConfiguration class holds the configuration and state of an SSL connection
|
\brief The QSslConfiguration class holds the configuration and state of an SSL connection
|
||||||
@ -201,7 +204,7 @@ bool QSslConfiguration::isNull() const
|
|||||||
d->privateKey.isNull() &&
|
d->privateKey.isNull() &&
|
||||||
d->peerCertificate.isNull() &&
|
d->peerCertificate.isNull() &&
|
||||||
d->peerCertificateChain.count() == 0 &&
|
d->peerCertificateChain.count() == 0 &&
|
||||||
d->sslOptions == (QSsl::SslOptionDisableEmptyFragments|QSsl::SslOptionDisableLegacyRenegotiation));
|
d->sslOptions == QSslConfigurationPrivate::defaultSslOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@ -83,7 +83,7 @@ public:
|
|||||||
: protocol(QSsl::SecureProtocols),
|
: protocol(QSsl::SecureProtocols),
|
||||||
peerVerifyMode(QSslSocket::AutoVerifyPeer),
|
peerVerifyMode(QSslSocket::AutoVerifyPeer),
|
||||||
peerVerifyDepth(0),
|
peerVerifyDepth(0),
|
||||||
sslOptions(QSsl::SslOptionDisableEmptyFragments|QSsl::SslOptionDisableLegacyRenegotiation)
|
sslOptions(QSslConfigurationPrivate::defaultSslOptions)
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
QSslCertificate peerCertificate;
|
QSslCertificate peerCertificate;
|
||||||
@ -101,6 +101,8 @@ public:
|
|||||||
|
|
||||||
QSsl::SslOptions sslOptions;
|
QSsl::SslOptions sslOptions;
|
||||||
|
|
||||||
|
Q_AUTOTEST_EXPORT static const QSsl::SslOptions defaultSslOptions;
|
||||||
|
|
||||||
// in qsslsocket.cpp:
|
// in qsslsocket.cpp:
|
||||||
static QSslConfiguration defaultConfiguration();
|
static QSslConfiguration defaultConfiguration();
|
||||||
static void setDefaultConfiguration(const QSslConfiguration &configuration);
|
static void setDefaultConfiguration(const QSslConfiguration &configuration);
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
#ifndef QT_NO_OPENSSL
|
#ifndef QT_NO_OPENSSL
|
||||||
#include "private/qsslsocket_openssl_p.h"
|
#include "private/qsslsocket_openssl_p.h"
|
||||||
#include "private/qsslsocket_openssl_symbols_p.h"
|
#include "private/qsslsocket_openssl_symbols_p.h"
|
||||||
|
#include "private/qsslconfiguration_p.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "../../../network-settings.h"
|
#include "../../../network-settings.h"
|
||||||
@ -2080,6 +2081,10 @@ void tst_QSslSocket::sslOptions()
|
|||||||
if (!QSslSocket::supportsSsl())
|
if (!QSslSocket::supportsSsl())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
QCOMPARE(QSslSocketBackendPrivate::setupOpenSslOptions(QSsl::SecureProtocols,
|
||||||
|
QSslConfigurationPrivate::defaultSslOptions),
|
||||||
|
long(SSL_OP_ALL|SSL_OP_NO_SSLv2));
|
||||||
|
|
||||||
QCOMPARE(QSslSocketBackendPrivate::setupOpenSslOptions(QSsl::SecureProtocols,
|
QCOMPARE(QSslSocketBackendPrivate::setupOpenSslOptions(QSsl::SecureProtocols,
|
||||||
QSsl::SslOptionDisableEmptyFragments
|
QSsl::SslOptionDisableEmptyFragments
|
||||||
|QSsl::SslOptionDisableLegacyRenegotiation),
|
|QSsl::SslOptionDisableLegacyRenegotiation),
|
||||||
|
Loading…
Reference in New Issue
Block a user