[neon/kde/kdepim-runtime/Neon/stable] debian/patches: Revert "add patch to fix pop3 https://bugs.kde.org/show_bug.cgi?id=446751 https://invent.kde.org/pim/kdepim-runtime/-/merge_requests/63/diffs?commit_id=f14fabcefb45790175e209ef8ae394def4a805e9 https://bugs.kde.org/show_bug.cgi?id=447008"
Jonathan Riddell
null at kde.org
Wed Dec 15 14:30:44 GMT 2021
Git commit eaefe313320b79bb1999d609fe3afd5e3ca6a1a1 by Jonathan Riddell.
Committed on 15/12/2021 at 14:30.
Pushed by jriddell into branch 'Neon/stable'.
Revert "add patch to fix pop3 https://bugs.kde.org/show_bug.cgi?id=446751 https://invent.kde.org/pim/kdepim-runtime/-/merge_requests/63/diffs?commit_id=f14fabcefb45790175e209ef8ae394def4a805e9 https://bugs.kde.org/show_bug.cgi?id=447008"
This reverts commit 303cec401b504e4f69b211e4035ed1f2486b6a90.
D +0 -121 debian/patches/pop3-ssl-connections.diff
D +0 -1 debian/patches/series
https://invent.kde.org/neon/kde/kdepim-runtime/commit/eaefe313320b79bb1999d609fe3afd5e3ca6a1a1
diff --git a/debian/patches/pop3-ssl-connections.diff b/debian/patches/pop3-ssl-connections.diff
deleted file mode 100644
index 0a1e68c..0000000
--- a/debian/patches/pop3-ssl-connections.diff
+++ /dev/null
@@ -1,121 +0,0 @@
-commit f14fabcefb45790175e209ef8ae394def4a805e9
-Author: Albert Astals Cid <aacid at kde.org>
-Date: Fri Dec 10 21:55:13 2021 +0100
-
- POP3: Fix SSL connections
-
- We need to go into ssl before trying to read from the socket, otherwise
- nothing works
-
- BUGS: 446751
-
-diff --git a/resources/pop3/pop3protocol.cpp b/resources/pop3/pop3protocol.cpp
-index c2d01d33a..15971919e 100644
---- a/resources/pop3/pop3protocol.cpp
-+++ b/resources/pop3/pop3protocol.cpp
-@@ -535,6 +535,39 @@ Result POP3Protocol::loginPASS()
- return Result::pass();
- }
-
-+Result POP3Protocol::startSsl()
-+{
-+ mSocket->ignoreSslErrors(); // Don't worry, errors are handled manually below
-+ mSocket->startClientEncryption();
-+ const bool encryptionStarted = mSocket->waitForEncrypted(s_connectTimeout);
-+
-+ const QSslCipher cipher = mSocket->sessionCipher();
-+ const QList<QSslError> errors = mSocket->sslHandshakeErrors();
-+ if (!encryptionStarted || !errors.isEmpty() || !mSocket->isEncrypted() || cipher.isNull() || cipher.usedBits() == 0) {
-+ QString errorString = std::accumulate(errors.begin(), errors.end(), QString(), [](QString cur, const QSslError &error) {
-+ if (!cur.isEmpty())
-+ cur += QLatin1Char('\n');
-+ cur += error.errorString();
-+ return cur;
-+ });
-+
-+ qCDebug(POP3_LOG) << "Initial SSL handshake failed. cipher.isNull() is" << cipher.isNull() << ", cipher.usedBits() is" << cipher.usedBits()
-+ << ", the socket says:" << mSocket->errorString() << "and the SSL errors are:" << errorString;
-+ mContinueAfterSslError = false;
-+ Q_EMIT sslError(KSslErrorUiData(mSocket));
-+ if (!mContinueAfterSslError) {
-+ if (errorString.isEmpty())
-+ errorString = mSocket->errorString();
-+ qCDebug(POP3_LOG) << "TLS setup has failed. Aborting." << errorString;
-+ closeConnection();
-+ return Result::fail(ERR_SSL_FAILURE, i18n("SSL/TLS error: %1", errorString));
-+ }
-+ } else {
-+ qCDebug(POP3_LOG) << "TLS has been enabled.";
-+ }
-+ return Result::pass();
-+}
-+
- Result POP3Protocol::openConnection()
- {
- m_try_apop = mSettings.authenticationMethod() == MailTransport::Transport::EnumAuthenticationType::APOP;
-@@ -560,6 +593,13 @@ Result POP3Protocol::openConnection()
- return Result::fail(mSocket->error(), errorString);
- }
-
-+ if (mSettings.useSSL()) {
-+ const Result res = startSsl();
-+ if (!res.success) {
-+ return res;
-+ }
-+ }
-+
- mConnected = true;
-
- greeting_buf = new char[GREETING_BUF_LEN];
-@@ -608,35 +648,9 @@ Result POP3Protocol::openConnection()
- "was unsuccessful.\nYou can "
- "disable TLS in the POP account settings dialog."));
- }
-- }
-- if (mSettings.useSSL() || mSettings.useTLS()) {
-- mSocket->ignoreSslErrors(); // Don't worry, errors are handled manually below
-- mSocket->startClientEncryption();
-- const bool encryptionStarted = mSocket->waitForEncrypted(s_connectTimeout);
--
-- const QSslCipher cipher = mSocket->sessionCipher();
-- const QList<QSslError> errors = mSocket->sslHandshakeErrors();
-- if (!encryptionStarted || !errors.isEmpty() || !mSocket->isEncrypted() || cipher.isNull() || cipher.usedBits() == 0) {
-- QString errorString = std::accumulate(errors.begin(), errors.end(), QString(), [](QString cur, const QSslError &error) {
-- if (!cur.isEmpty())
-- cur += QLatin1Char('\n');
-- cur += error.errorString();
-- return cur;
-- });
--
-- qCDebug(POP3_LOG) << "Initial SSL handshake failed. cipher.isNull() is" << cipher.isNull() << ", cipher.usedBits() is" << cipher.usedBits()
-- << ", the socket says:" << mSocket->errorString() << "and the SSL errors are:" << errorString;
-- mContinueAfterSslError = false;
-- Q_EMIT sslError(KSslErrorUiData(mSocket));
-- if (!mContinueAfterSslError) {
-- if (errorString.isEmpty())
-- errorString = mSocket->errorString();
-- qCDebug(POP3_LOG) << "TLS setup has failed. Aborting." << errorString;
-- closeConnection();
-- return Result::fail(ERR_SSL_FAILURE, i18n("SSL/TLS error: %1", errorString));
-- }
-- } else {
-- qCDebug(POP3_LOG) << "TLS has been enabled.";
-+ const Result res = startSsl();
-+ if (!res.success) {
-+ return res;
- }
- }
-
-diff --git a/resources/pop3/pop3protocol.h b/resources/pop3/pop3protocol.h
-index 9b40b334f..d01f7ab7a 100644
---- a/resources/pop3/pop3protocol.h
-+++ b/resources/pop3/pop3protocol.h
-@@ -127,6 +127,8 @@ private:
- */
- Q_REQUIRED_RESULT Result loginPASS();
-
-+ Q_REQUIRED_RESULT Result startSsl();
-+
- const Settings &mSettings;
- QSslSocket *const mSocket;
- unsigned short int m_iPort;
diff --git a/debian/patches/series b/debian/patches/series
deleted file mode 100644
index eb1b932..0000000
--- a/debian/patches/series
+++ /dev/null
@@ -1 +0,0 @@
-pop3-ssl-connections.diff
More information about the Neon-commits
mailing list