Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannah von Reth <hannah.vonreth@owncloud.com>2022-05-11 11:58:51 +0300
committerHannah von Reth <vonreth@kde.org>2022-05-11 19:56:30 +0300
commit99bb1dc703db9ab3de600ad089fe91c5658bb29d (patch)
tree999ff96519abd10fb932c79de628b968b3241802 /src/libsync
parent4a83db93b529c5ea53f2484d8d0c7294ee889829 (diff)
Remove Account:sslConfiguration
Diffstat (limited to 'src/libsync')
-rw-r--r--src/libsync/accessmanager.cpp8
-rw-r--r--src/libsync/account.cpp26
-rw-r--r--src/libsync/account.h5
-rw-r--r--src/libsync/networkjobs.cpp1
4 files changed, 6 insertions, 34 deletions
diff --git a/src/libsync/accessmanager.cpp b/src/libsync/accessmanager.cpp
index 223531fdd..d731ddb69 100644
--- a/src/libsync/accessmanager.cpp
+++ b/src/libsync/accessmanager.cpp
@@ -80,11 +80,15 @@ QNetworkReply *AccessManager::createRequest(QNetworkAccessManager::Operation op,
// for some reason, passing an empty list causes the default chain to be removed
// this behavior does not match the documentation
+ auto sslConfiguration = newRequest.sslConfiguration();
+
+ sslConfiguration.setSslOption(QSsl::SslOptionDisableSessionTickets, false);
+ sslConfiguration.setSslOption(QSsl::SslOptionDisableSessionSharing, false);
+ sslConfiguration.setSslOption(QSsl::SslOptionDisableSessionPersistence, false);
if (!_customTrustedCaCertificates.isEmpty()) {
- auto sslConfiguration = newRequest.sslConfiguration();
sslConfiguration.addCaCertificates({ _customTrustedCaCertificates.begin(), _customTrustedCaCertificates.end() });
- newRequest.setSslConfiguration(sslConfiguration);
}
+ newRequest.setSslConfiguration(sslConfiguration);
const auto reply = QNetworkAccessManager::createRequest(op, newRequest, outgoingData);
HttpLogger::logRequest(reply, op, outgoingData);
diff --git a/src/libsync/account.cpp b/src/libsync/account.cpp
index 90218acad..0087eba0e 100644
--- a/src/libsync/account.cpp
+++ b/src/libsync/account.cpp
@@ -253,7 +253,6 @@ QNetworkReply *Account::sendRawRequest(const QByteArray &verb, const QUrl &url,
{
Q_ASSERT(verb.isUpper());
req.setUrl(url);
- req.setSslConfiguration(this->getOrCreateSslConfig());
if (verb == "HEAD" && !data) {
return _am->head(req);
} else if (verb == "GET" && !data) {
@@ -268,31 +267,6 @@ QNetworkReply *Account::sendRawRequest(const QByteArray &verb, const QUrl &url,
return _am->sendCustomRequest(req, verb, data);
}
-void Account::setSslConfiguration(const QSslConfiguration &config)
-{
- _sslConfiguration = config;
-}
-
-QSslConfiguration Account::getOrCreateSslConfig()
-{
- if (!_sslConfiguration.isNull()) {
- // Will be set by CheckServerJob::finished()
- // We need to use a central shared config to get SSL session tickets
- return _sslConfiguration;
- }
-
- // if setting the client certificate fails, you will probably get an error similar to this:
- // "An internal error number 1060 happened. SSL handshake failed, client certificate was requested: SSL error: sslv3 alert handshake failure"
- QSslConfiguration sslConfig = QSslConfiguration::defaultConfiguration();
-
- // Try hard to re-use session for different requests
- sslConfig.setSslOption(QSsl::SslOptionDisableSessionTickets, false);
- sslConfig.setSslOption(QSsl::SslOptionDisableSessionSharing, false);
- sslConfig.setSslOption(QSsl::SslOptionDisableSessionPersistence, false);
-
- return sslConfig;
-}
-
void Account::setApprovedCerts(const QList<QSslCertificate> &certs)
{
_approvedCerts = { certs.begin(), certs.end() };
diff --git a/src/libsync/account.h b/src/libsync/account.h
index 0a0103114..f4bd141d0 100644
--- a/src/libsync/account.h
+++ b/src/libsync/account.h
@@ -156,10 +156,6 @@ public:
QNetworkRequest req = QNetworkRequest(),
QIODevice *data = nullptr);
- /** The ssl configuration during the first connection */
- QSslConfiguration getOrCreateSslConfig();
- QSslConfiguration sslConfiguration() const { return _sslConfiguration; }
- void setSslConfiguration(const QSslConfiguration &config);
// Because of bugs in Qt, we use this to store info needed for the SSL Button
QSslCipher _sessionCipher;
QByteArray _sessionTicket;
@@ -285,7 +281,6 @@ private:
QUrl _url;
QSet<QSslCertificate> _approvedCerts;
- QSslConfiguration _sslConfiguration;
Capabilities _capabilities;
QString _serverVersion;
QScopedPointer<AbstractSslErrorHandler> _sslErrorHandler;
diff --git a/src/libsync/networkjobs.cpp b/src/libsync/networkjobs.cpp
index 25e2af003..6dedb2c32 100644
--- a/src/libsync/networkjobs.cpp
+++ b/src/libsync/networkjobs.cpp
@@ -488,7 +488,6 @@ void CheckServerJob::setMaxRedirectsAllowed(int maxRedirectsAllowed)
void CheckServerJob::metaDataChangedSlot()
{
- account()->setSslConfiguration(reply()->sslConfiguration());
mergeSslConfigurationForSslButton(reply()->sslConfiguration(), account());
}