diff --git a/rpm/0001-Stop-_incomingDataTimer-when-imapprotocol-object-is-.patch b/rpm/0001-Stop-_incomingDataTimer-when-imapprotocol-object-is-.patch index 29d9e58..1cf7b80 100644 --- a/rpm/0001-Stop-_incomingDataTimer-when-imapprotocol-object-is-.patch +++ b/rpm/0001-Stop-_incomingDataTimer-when-imapprotocol-object-is-.patch @@ -1,7 +1,7 @@ -From 5e765286bdcf989f5ba68a3230bd88652e8fce43 Mon Sep 17 00:00:00 2001 +From f2d4bba3b0e068ae45b7b76c2e1abad6f9f498c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Val=C3=A9rio=20Val=C3=A9rio?= Date: Mon, 23 Feb 2015 13:08:24 +0200 -Subject: [PATCH 01/24] Stop _incomingDataTimer when imapprotocol object is +Subject: [PATCH] Stop _incomingDataTimer when imapprotocol object is destroyed. A crash occurs in case the timer is active and the object is destroyed. @@ -24,5 +24,5 @@ index 4df62a57..984e2638 100644 delete _fsm; } -- -2.17.1 +2.26.2 diff --git a/rpm/0002-Introduce-acceptUntrustedCertificates-configuration.patch b/rpm/0002-Introduce-acceptUntrustedCertificates-configuration.patch index 9be8d36..a746f05 100644 --- a/rpm/0002-Introduce-acceptUntrustedCertificates-configuration.patch +++ b/rpm/0002-Introduce-acceptUntrustedCertificates-configuration.patch @@ -1,7 +1,7 @@ -From ebfe9142f6b968a53e7796bdce081e36a852db67 Mon Sep 17 00:00:00 2001 +From 69205cb598d6db0c5edeb184ec90de745ddbf51b Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Mon, 13 Aug 2018 15:45:24 +0300 -Subject: [PATCH 02/24] Introduce acceptUntrustedCertificates() configuration. +Subject: [PATCH] Introduce acceptUntrustedCertificates() configuration. --- src/libraries/qmfclient/qmailserviceaction.h | 2 ++ @@ -441,5 +441,5 @@ index e8b28a6b..ed115d53 100644 void setSmtpPassword(const QString& password); void setSmtpAuthentication(int t); -- -2.17.1 +2.26.2 diff --git a/rpm/0003-fix-tests-installation-path.patch b/rpm/0003-fix-tests-installation-path.patch index 02970ec..9624ac0 100644 --- a/rpm/0003-fix-tests-installation-path.patch +++ b/rpm/0003-fix-tests-installation-path.patch @@ -1,7 +1,7 @@ -From 86e3b14ee20e9599da9a09ba5c131e8ccbf647cd Mon Sep 17 00:00:00 2001 +From fba75e39c44bdb971387ec74c228dc8af7739cbd Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Tue, 30 Apr 2013 14:38:17 +0300 -Subject: [PATCH 03/24] fix tests installation path. +Subject: [PATCH] fix tests installation path. --- .../tst_messageserver/tst_messageserver.pro | 2 +- @@ -2935,5 +2935,5 @@ index 4cde1fe3..204ecd5a 100644 INSTALLS += testdata -- -2.17.1 +2.26.2 diff --git a/rpm/0004-Accounts-qt-integration.patch b/rpm/0004-Accounts-qt-integration.patch index 2dd3fc3..3c16017 100644 --- a/rpm/0004-Accounts-qt-integration.patch +++ b/rpm/0004-Accounts-qt-integration.patch @@ -1,7 +1,7 @@ -From 0a0fa3662eb6c99bf70994e858eb5380d37a0619 Mon Sep 17 00:00:00 2001 +From 1ac228490d30ad5902b608a6d74a947e68ddc4d6 Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Wed, 29 May 2013 09:44:20 +0300 -Subject: [PATCH 04/24] Accounts-qt integration. +Subject: [PATCH] Accounts-qt integration. Squashed commits, either one line description or block comment: @@ -116,6 +116,18 @@ Auth in one step introduced by this commit, better to reduce communication with c: AUTH PLAIN S: 235 2.7.0 Authentication successful + +---- + +Trigger notification if account credentials are incorrect + +For accounts that use passwords, if the credentials are incorrect this +change will cause the "CredentialsNeedUpdate = true" property to be set +on the account, triggering signond to show a notification to the user. + +This mirrors the behavour of qmf-oauth2-plugin. See +SSOOauth2Plugin::credentialsNeedUpdate() in +base-qmf-oauth2-plugin/oauth2plugin.cpp --- common.pri | 6 + .../qmfclient/qmailaccountlistmodel.cpp | 44 +- @@ -156,11 +168,11 @@ S: 235 2.7.0 Authentication successful .../messageservices/smtp/smtpservice.cpp | 8 + src/plugins/plugins.pro | 3 + src/plugins/ssoauth/password/password.pro | 21 + - .../ssoauth/password/passwordplugin.cpp | 185 +++ - src/plugins/ssoauth/password/passwordplugin.h | 72 + + .../ssoauth/password/passwordplugin.cpp | 200 +++ + src/plugins/ssoauth/password/passwordplugin.h | 78 + src/tools/messageserver/servicehandler.cpp | 13 + tests/tst_qmailstore/tst_qmailstore.cpp | 85 ++ - 43 files changed, 3651 insertions(+), 65 deletions(-) + 43 files changed, 3672 insertions(+), 65 deletions(-) create mode 100644 src/libraries/qmfclient/share/email.provider create mode 100644 src/libraries/qmfclient/share/email.service create mode 100644 src/libraries/qmfclient/ssoaccountmanager.cpp @@ -4959,14 +4971,14 @@ index 00000000..f41e80ad + diff --git a/src/plugins/ssoauth/password/passwordplugin.cpp b/src/plugins/ssoauth/password/passwordplugin.cpp new file mode 100644 -index 00000000..1d2304c1 +index 00000000..4eac2d1b --- /dev/null +++ b/src/plugins/ssoauth/password/passwordplugin.cpp -@@ -0,0 +1,185 @@ +@@ -0,0 +1,200 @@ +/**************************************************************************** +** -+** Copyright (C) 2013 Jolla Ltd. -+** Contact: Valério Valério ++** Copyright (c) 2013-2020 Jolla Ltd. ++** Copyright (c) 2020 Open Mobile Platform LLC. +** +** This file is part of the Qt Messaging Framework. +** @@ -5007,6 +5019,10 @@ index 00000000..1d2304c1 +#include "passwordplugin.h" +#include "qmailnamespace.h" + ++// libaccounts-qt ++#include ++#include ++ +// From Qt Messaging Framework IMAP plugin +// Ensure a string is quoted, if required for IMAP transmission +// As per IMAP4 rfc 2060 section 4.2 @@ -5046,6 +5062,7 @@ index 00000000..1d2304c1 + +SSOPasswordPlugin::SSOPasswordPlugin(QObject *parent) + : SSOAuthService(parent) ++ , m_accountManager(new Accounts::Manager(this)) +{ +} + @@ -5133,9 +5150,19 @@ index 00000000..1d2304c1 + +void SSOPasswordPlugin::credentialsNeedUpdate(int accountId) +{ -+ // For the password method we don't do anything, messageserver -+ // already informs the clients about login failed. -+ Q_UNUSED(accountId); ++ // Mirrors the functionality of SSOOauth2Plugin::credentialsNeedUpdate ++ // See base-qmf-oauth2-plugin/oauth2plugin.cpp ++ Accounts::Account *account = Accounts::Account::fromId(m_accountManager, accountId, this); ++ Accounts::Service srv(m_accountManager->service(QStringLiteral("email"))); ++ if (srv.isValid()) { ++ qWarning() << "password-plugin: setting CredentialsNeedUpdate on account:" << account->id(); ++ account->selectService(srv); ++ account->setValue("CredentialsNeedUpdate", QVariant::fromValue(true)); ++ account->setValue("CredentialsNeedUpdateFrom", QVariant::fromValue(QString::fromLatin1("messageserver5"))); ++ account->selectService(Accounts::Service()); ++ account->syncAndBlock(); ++ } ++ account->deleteLater(); +} + +SignOn::SessionData SSOPasswordPlugin::sessionData(const QString &accountProvider, QVariantMap authParameters) const @@ -5150,14 +5177,14 @@ index 00000000..1d2304c1 + diff --git a/src/plugins/ssoauth/password/passwordplugin.h b/src/plugins/ssoauth/password/passwordplugin.h new file mode 100644 -index 00000000..1ae046d8 +index 00000000..8603694e --- /dev/null +++ b/src/plugins/ssoauth/password/passwordplugin.h -@@ -0,0 +1,72 @@ +@@ -0,0 +1,78 @@ +/**************************************************************************** +** -+** Copyright (C) 2013 Jolla Ltd. -+** Contact: Valério Valério ++** Copyright (c) 2013-2020 Jolla Ltd. ++** Copyright (c) 2020 Open Mobile Platform LLC. +** +** This file is part of the Qt Messaging Framework. +** @@ -5203,6 +5230,11 @@ index 00000000..1ae046d8 +#include +#include + ++namespace Accounts { ++ class Manager; ++ class Account; ++} ++ +class SSOPasswordPlugin : public SSOAuthService +{ + Q_OBJECT @@ -5223,6 +5255,7 @@ index 00000000..1ae046d8 + QList getIMAPAuthentication(const QString &password, const QString &username, int serviceAuthentication) const; + QList getPOPAuthentication(const QString &password, const QString &username, int serviceAuthentication) const; + QList getSMTPAuthentication(const QString &password, const QString &username, int serviceAuthentication) const; ++ Accounts::Manager *m_accountManager; +}; + +#endif // PASSWORDPLUGIN_H @@ -5449,5 +5482,5 @@ index 26719daa..84ca9409 100644 QMailAccount account3(account1.id()); QCOMPARE(QMailStore::instance()->lastError(), QMailStore::InvalidId); -- -2.17.1 +2.26.2 diff --git a/rpm/0005-Start-messageserver-on-system-startup-in-case-there-.patch b/rpm/0005-Start-messageserver-on-system-startup-in-case-there-.patch index 6203b29..53ef5e4 100644 --- a/rpm/0005-Start-messageserver-on-system-startup-in-case-there-.patch +++ b/rpm/0005-Start-messageserver-on-system-startup-in-case-there-.patch @@ -1,8 +1,8 @@ -From 4372ae2417889a38fd2352d1608cee8435150638 Mon Sep 17 00:00:00 2001 +From 071b29984213918dfee0b375caa82757901b6ba2 Mon Sep 17 00:00:00 2001 From: Evgeny Karpov Date: Thu, 24 Oct 2013 09:37:30 +0000 -Subject: [PATCH 05/24] Start messageserver on system startup in case there are - email accounts present +Subject: [PATCH] Start messageserver on system startup in case there are email + accounts present Squashed: Do not try to restart messageserver when there are no accounts. Fixes: JB#12100 @@ -172,5 +172,5 @@ index d05c3377..689ad320 100644 + SUBDIRS += accountscheck +} -- -2.17.1 +2.26.2 diff --git a/rpm/0006-Add-keepalive-timer-to-IMAP-IDLE-service.patch b/rpm/0006-Add-keepalive-timer-to-IMAP-IDLE-service.patch index ac20165..3a7c454 100644 --- a/rpm/0006-Add-keepalive-timer-to-IMAP-IDLE-service.patch +++ b/rpm/0006-Add-keepalive-timer-to-IMAP-IDLE-service.patch @@ -1,7 +1,7 @@ -From f96179ba4c01e11f58a2197eb5e2fe6e8266c1c1 Mon Sep 17 00:00:00 2001 +From 15d35e73cd6bc3b1128aa23b7c30b8ce26ab9ba3 Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Wed, 10 Sep 2014 14:36:13 +0300 -Subject: [PATCH 06/24] Add keepalive timer to IMAP IDLE service +Subject: [PATCH] Add keepalive timer to IMAP IDLE service This commit introduce a dependency on nemo-keepalive via DEFINES+=USE_KEEPALIVE @@ -105,5 +105,5 @@ index 00682a87..b3e8dd97 100644 class ImapServicePlugin : public QMailMessageServicePlugin -- -2.17.1 +2.26.2 diff --git a/rpm/0007-Use-Qt5-booster-to-save-memory.patch b/rpm/0007-Use-Qt5-booster-to-save-memory.patch index 28838b0..88cbc21 100644 --- a/rpm/0007-Use-Qt5-booster-to-save-memory.patch +++ b/rpm/0007-Use-Qt5-booster-to-save-memory.patch @@ -1,7 +1,7 @@ -From 769280d652f4828cbff7c2d0ece3d6fbbb3cf902 Mon Sep 17 00:00:00 2001 +From 4f228ab04d182f22253bb66756e3111a57d45ffe Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Mon, 27 Oct 2014 09:49:12 +0200 -Subject: [PATCH 07/24] Use Qt5 booster to save memory. +Subject: [PATCH] Use Qt5 booster to save memory. --- src/tools/messageserver/main.cpp | 2 +- @@ -61,5 +61,5 @@ index 0d583d15..a5aa05a9 100644 RestartSec=1 -- -2.17.1 +2.26.2 diff --git a/rpm/0008-Introduce-QMailAccount-HasPersistentConnection-statu.patch b/rpm/0008-Introduce-QMailAccount-HasPersistentConnection-statu.patch index 5709bfd..bbed23e 100644 --- a/rpm/0008-Introduce-QMailAccount-HasPersistentConnection-statu.patch +++ b/rpm/0008-Introduce-QMailAccount-HasPersistentConnection-statu.patch @@ -1,8 +1,7 @@ -From 1c8ac90c0760b5ea00d5f5625dab35e7f4957b80 Mon Sep 17 00:00:00 2001 +From 572179f5aef58be39e6a0e9daa742e0f457c3bd3 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Mon, 13 Aug 2018 17:24:36 +0300 -Subject: [PATCH 08/24] Introduce QMailAccount::HasPersistentConnection status - flag +Subject: [PATCH] Introduce QMailAccount::HasPersistentConnection status flag Use QMailAccount::HasPersistentConnection status flag for IMAP idle instead of updating last sync time every minute, this reduces accounts db writes(they @@ -60,5 +59,5 @@ index 221fa7c5..ab509afd 100644 ssoAccount->setValue("emailaddress", account->fromAddress().address()); ssoAccount->setValue("fullName", account->fromAddress().name()); -- -2.17.1 +2.26.2 diff --git a/rpm/0009-Introduce-discovery-of-authentication-from-the-anoun.patch b/rpm/0009-Introduce-discovery-of-authentication-from-the-anoun.patch index 2afe4d0..70a09ef 100644 --- a/rpm/0009-Introduce-discovery-of-authentication-from-the-anoun.patch +++ b/rpm/0009-Introduce-discovery-of-authentication-from-the-anoun.patch @@ -1,7 +1,7 @@ -From 9906e81a475c705655248b955bb05d2d316e3d03 Mon Sep 17 00:00:00 2001 +From 275994691f0f2c292437800d413dc4fd159f4a0c Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Wed, 15 Aug 2018 11:26:49 +0300 -Subject: [PATCH 09/24] Introduce discovery of authentication from the anounced +Subject: [PATCH] Introduce discovery of authentication from the anounced capabilities(IMAP/SMTP) Squashed oneliner: @@ -1221,10 +1221,10 @@ index ed115d53..7e03e956 100644 }; diff --git a/src/plugins/ssoauth/password/passwordplugin.cpp b/src/plugins/ssoauth/password/passwordplugin.cpp -index 1d2304c1..20d2cf57 100644 +index 4eac2d1b..88db5298 100644 --- a/src/plugins/ssoauth/password/passwordplugin.cpp +++ b/src/plugins/ssoauth/password/passwordplugin.cpp -@@ -88,52 +88,80 @@ SSOPasswordPlugin::~SSOPasswordPlugin() +@@ -93,52 +93,80 @@ SSOPasswordPlugin::~SSOPasswordPlugin() { } @@ -1339,7 +1339,7 @@ index 1d2304c1..20d2cf57 100644 return result; } -@@ -146,8 +174,9 @@ QString SSOPasswordPlugin::key() const +@@ -151,8 +179,9 @@ QString SSOPasswordPlugin::key() const { return "password"; } @@ -1351,7 +1351,7 @@ index 1d2304c1..20d2cf57 100644 { QString password = sessionData.Secret(); QString username = sessionData.UserName(); -@@ -156,13 +185,13 @@ QList SSOPasswordPlugin::authentication(const SignOn::SessionData &s +@@ -161,13 +190,13 @@ QList SSOPasswordPlugin::authentication(const SignOn::SessionData &s username = userName; if (serviceType == "imap4") { @@ -1370,10 +1370,10 @@ index 1d2304c1..20d2cf57 100644 } diff --git a/src/plugins/ssoauth/password/passwordplugin.h b/src/plugins/ssoauth/password/passwordplugin.h -index 1ae046d8..a7a25676 100644 +index 8603694e..a2f66cd9 100644 --- a/src/plugins/ssoauth/password/passwordplugin.h +++ b/src/plugins/ssoauth/password/passwordplugin.h -@@ -57,16 +57,16 @@ public: +@@ -62,16 +62,16 @@ public: ~SSOPasswordPlugin(); virtual QString key() const; @@ -1392,9 +1392,9 @@ index 1ae046d8..a7a25676 100644 + QMap > getIMAPAuthentication(const QString &password, const QString &username) const; + QMap > getPOPAuthentication(const QString &password, const QString &username) const; + QMap > getSMTPAuthentication(const QString &password, const QString &username) const; + Accounts::Manager *m_accountManager; }; - #endif // PASSWORDPLUGIN_H -- -2.17.1 +2.26.2 diff --git a/rpm/0010-Handle-SMTP-response-504.patch b/rpm/0010-Handle-SMTP-response-504.patch index 0ce6e78..01864ec 100644 --- a/rpm/0010-Handle-SMTP-response-504.patch +++ b/rpm/0010-Handle-SMTP-response-504.patch @@ -1,7 +1,7 @@ -From 44a6bb349ec2682372242a25bce9ac5f5ada4a49 Mon Sep 17 00:00:00 2001 +From 0863fa4521af4ecf2108c403e1250561fc9c1e92 Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Wed, 17 Dec 2014 17:16:45 +0000 -Subject: [PATCH 10/24] Handle SMTP response 504. +Subject: [PATCH] Handle SMTP response 504. Handle SMTP response 504 and reset auth method if auth from caps is enabled. @@ -288,5 +288,5 @@ index 1ca218a8..96852b2b 100644 QTimer *authTimeout; -- -2.17.1 +2.26.2 diff --git a/rpm/0011-Recreate-SSO-identity-for-smtp-in-case-of-failure.patch b/rpm/0011-Recreate-SSO-identity-for-smtp-in-case-of-failure.patch index 6e00664..914c4f8 100644 --- a/rpm/0011-Recreate-SSO-identity-for-smtp-in-case-of-failure.patch +++ b/rpm/0011-Recreate-SSO-identity-for-smtp-in-case-of-failure.patch @@ -1,7 +1,7 @@ -From c9f9d1e64dd30cd28212b3de8d469c064c3e0d6e Mon Sep 17 00:00:00 2001 +From e846fbd37877440a5a13dee50a5ed2cd7d17f781 Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Mon, 19 Jan 2015 11:25:01 +0200 -Subject: [PATCH 11/24] Recreate SSO identity for smtp in case of failure. +Subject: [PATCH] Recreate SSO identity for smtp in case of failure. Similar to what is already done for IMAP. --- @@ -65,5 +65,5 @@ index 96852b2b..12003c7e 100644 #endif }; -- -2.17.1 +2.26.2 diff --git a/rpm/0012-Listen-to-sync-schedule-changes-from-buteo-sync-fram.patch b/rpm/0012-Listen-to-sync-schedule-changes-from-buteo-sync-fram.patch index 093c037..aa1bfb2 100644 --- a/rpm/0012-Listen-to-sync-schedule-changes-from-buteo-sync-fram.patch +++ b/rpm/0012-Listen-to-sync-schedule-changes-from-buteo-sync-fram.patch @@ -1,8 +1,7 @@ -From fdfddcefb80e40927e63c40eeca4058c5f62e698 Mon Sep 17 00:00:00 2001 +From 48d083a0845681f379fd8072e811152895f40784 Mon Sep 17 00:00:00 2001 From: Valerio Valerio Date: Mon, 2 Feb 2015 17:03:21 +0200 -Subject: [PATCH 12/24] Listen to sync schedule changes from buteo sync - framework. +Subject: [PATCH] Listen to sync schedule changes from buteo sync framework. This commit introduces d-bus listeners inside IMAP4 service to react to changes in the account schedule related to always-on mode @@ -467,5 +466,5 @@ index a5aa05a9..9622d701 100644 [Service] -- -2.17.1 +2.26.2 diff --git a/rpm/0013-Do-AUTHENTICATE-PLAIN-in-two-stages.patch b/rpm/0013-Do-AUTHENTICATE-PLAIN-in-two-stages.patch index 9d71f49..1351bbd 100644 --- a/rpm/0013-Do-AUTHENTICATE-PLAIN-in-two-stages.patch +++ b/rpm/0013-Do-AUTHENTICATE-PLAIN-in-two-stages.patch @@ -1,7 +1,7 @@ -From 2585663419f2286b3320439a9930e657a82d64a7 Mon Sep 17 00:00:00 2001 +From b535bf5077ae8a7832943821590b7699dbfd5340 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Val=C3=A9rio=20Val=C3=A9rio?= Date: Fri, 20 Feb 2015 15:06:21 +0200 -Subject: [PATCH 13/24] Do AUTHENTICATE PLAIN in two stages +Subject: [PATCH] Do AUTHENTICATE PLAIN in two stages Some servers(e.g yandex.ru) do not support AUTHENTICATE PLAIN in a single command, according to RFC4616 this way is optional, so we allways @@ -53,10 +53,10 @@ index 46de9f49..97d94764 100644 return QMailAuthenticator::getResponse(svcCfg, challenge); #endif diff --git a/src/plugins/ssoauth/password/passwordplugin.cpp b/src/plugins/ssoauth/password/passwordplugin.cpp -index 20d2cf57..279f9721 100644 +index 88db5298..00ad7e73 100644 --- a/src/plugins/ssoauth/password/passwordplugin.cpp +++ b/src/plugins/ssoauth/password/passwordplugin.cpp -@@ -94,20 +94,22 @@ QMap > SSOPasswordPlugin::getIMAPAuthentication(const +@@ -99,20 +99,22 @@ QMap > SSOPasswordPlugin::getIMAPAuthentication(const QMap > result; // Add PLAIN auth @@ -86,7 +86,7 @@ index 20d2cf57..279f9721 100644 result.insert(QString::fromLatin1("CRAM-MD5"), cramAuth); return result; -@@ -120,8 +122,8 @@ QMap > SSOPasswordPlugin::getPOPAuthentication(const +@@ -125,8 +127,8 @@ QMap > SSOPasswordPlugin::getPOPAuthentication(const // Add PLAIN auth QList plainAuth; @@ -98,5 +98,5 @@ index 20d2cf57..279f9721 100644 // Currently pop account does not have any auth settings, so only plain can be used -- -2.17.1 +2.26.2 diff --git a/rpm/0014-Prevent-push-enabled-status-to-go-out-of-sync.patch b/rpm/0014-Prevent-push-enabled-status-to-go-out-of-sync.patch index 649d1f4..00664c7 100644 --- a/rpm/0014-Prevent-push-enabled-status-to-go-out-of-sync.patch +++ b/rpm/0014-Prevent-push-enabled-status-to-go-out-of-sync.patch @@ -1,7 +1,7 @@ -From 505f4031f439ba3b42358e2d03d29469a798340f Mon Sep 17 00:00:00 2001 +From 3678112efc4311f9a7720576b7ee59cba5b54891 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Val=C3=A9rio=20Val=C3=A9rio?= Date: Mon, 23 Feb 2015 13:31:30 +0200 -Subject: [PATCH 14/24] Prevent push enabled status to go out of sync. +Subject: [PATCH] Prevent push enabled status to go out of sync. --- .../messageservices/imap/imapservice.cpp | 57 +++++++++++-------- @@ -131,5 +131,5 @@ index 157da852..c8300aa4 100644 } } -- -2.17.1 +2.26.2 diff --git a/rpm/0015-Check-if-IDLE-connection-needs-to-be-established-aft.patch b/rpm/0015-Check-if-IDLE-connection-needs-to-be-established-aft.patch index 9f598ab..1a027cd 100644 --- a/rpm/0015-Check-if-IDLE-connection-needs-to-be-established-aft.patch +++ b/rpm/0015-Check-if-IDLE-connection-needs-to-be-established-aft.patch @@ -1,8 +1,8 @@ -From 1939da8ce6faf3c02d064a64fe571eef783fe3c9 Mon Sep 17 00:00:00 2001 +From 492bd281990970b6e37514507c3c27dd3e4a9b4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Val=C3=A9rio=20Val=C3=A9rio?= Date: Mon, 11 May 2015 15:12:07 +0300 -Subject: [PATCH 15/24] Check if IDLE connection needs to be established after - login. Fixes JB#28693 +Subject: [PATCH] Check if IDLE connection needs to be established after login. + Fixes JB#28693 Some servers only advertise full capabilities after sucessful login, so we need to check if IDLE connection needs to be established in such @@ -33,5 +33,5 @@ index 40bbe543..d78d897e 100644 bool compressCapable(_protocol.capabilities().contains("COMPRESS=DEFLATE", Qt::CaseInsensitive)); if (!_protocol.encrypted() && QMFALLOWCOMPRESS && compressCapable && !_protocol.compress()) { -- -2.17.1 +2.26.2 diff --git a/rpm/0016-Revert-Fix-bundled-zlib-detection.patch b/rpm/0016-Revert-Fix-bundled-zlib-detection.patch index 187ba6a..3c876fd 100644 --- a/rpm/0016-Revert-Fix-bundled-zlib-detection.patch +++ b/rpm/0016-Revert-Fix-bundled-zlib-detection.patch @@ -1,7 +1,7 @@ -From ad8c7c245ba4004e9737d384205a3a34d2767669 Mon Sep 17 00:00:00 2001 +From b8ee070cbaa3a1960407101108a80bd481836230 Mon Sep 17 00:00:00 2001 From: Pekka Vuorela Date: Tue, 14 Aug 2018 14:04:19 +0300 -Subject: [PATCH 16/24] Revert "Fix bundled zlib detection" +Subject: [PATCH] Revert "Fix bundled zlib detection" This reverts commit 7e2579c1fbfc077f3d95eceed5c79236752acb87. @@ -37,5 +37,5 @@ index 8a2258bd..e4897df9 100644 } -- -2.17.1 +2.26.2 diff --git a/rpm/0017-Add-signature-settings-in-account.patch b/rpm/0017-Add-signature-settings-in-account.patch index 0dc7f3c..9ced9d0 100644 --- a/rpm/0017-Add-signature-settings-in-account.patch +++ b/rpm/0017-Add-signature-settings-in-account.patch @@ -1,7 +1,7 @@ -From 5aa26215ddcb4764fed2726369bb3f9c6b70a372 Mon Sep 17 00:00:00 2001 +From cdb7272f21c278479ccc640bfb29126251d076d6 Mon Sep 17 00:00:00 2001 From: Damien Caliste Date: Mon, 5 Nov 2018 16:11:29 +0100 -Subject: [PATCH 17/24] Add signature settings in account +Subject: [PATCH] Add signature settings in account --- src/libraries/qmfclient/qmailaccount.cpp | 48 ++++++++++++++++++++++++ @@ -184,5 +184,5 @@ index ab509afd..a6913276 100644 ssoAccount->setValue("fullName", account->fromAddress().name()); if (account->lastSynchronized().isValid()) { -- -2.17.1 +2.26.2 diff --git a/rpm/0018-Use-socket-s-local-address-for-HELO-and-EHLO-message.patch b/rpm/0018-Use-socket-s-local-address-for-HELO-and-EHLO-message.patch index 2f7dce5..b26de6b 100644 --- a/rpm/0018-Use-socket-s-local-address-for-HELO-and-EHLO-message.patch +++ b/rpm/0018-Use-socket-s-local-address-for-HELO-and-EHLO-message.patch @@ -1,7 +1,7 @@ -From 76dfe79d9e6dbed503ab459e4a108dfbc447a8fa Mon Sep 17 00:00:00 2001 +From 42dc9606299bd2f1cb05b038f12944b74568b2a0 Mon Sep 17 00:00:00 2001 From: Raine Makelainen Date: Tue, 23 Jul 2019 11:44:27 +0300 -Subject: [PATCH 18/24] Use socket's local address for HELO and EHLO messages +Subject: [PATCH] Use socket's local address for HELO and EHLO messages Signed-off-by: Raine Makelainen --- @@ -65,5 +65,5 @@ index 19f69880..0300dcf1 100644 status = Helo; } else { -- -2.17.1 +2.26.2 diff --git a/rpm/0019-Use-EightBit-encoding-instead-of-Base64-for-text-typ.patch b/rpm/0019-Use-EightBit-encoding-instead-of-Base64-for-text-typ.patch index 43bfbbb..369556a 100644 --- a/rpm/0019-Use-EightBit-encoding-instead-of-Base64-for-text-typ.patch +++ b/rpm/0019-Use-EightBit-encoding-instead-of-Base64-for-text-typ.patch @@ -1,7 +1,7 @@ -From b315ca2e5901c4a139e99ebc2ef198ded1a1c227 Mon Sep 17 00:00:00 2001 +From 4165b1ae3ed3c24b8cec6cafcd862a5dbe8757aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomi=20Lepp=C3=A4nen?= Date: Mon, 30 Sep 2019 14:11:57 +0300 -Subject: [PATCH 19/24] Use EightBit encoding instead of Base64 for text types +Subject: [PATCH] Use EightBit encoding instead of Base64 for text types MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -33,5 +33,5 @@ index 71491f1a..d7678678 100644 addedSome = true; } -- -2.17.1 +2.26.2 diff --git a/rpm/0020-Follow-the-synchronizationEnabled-flag-when-folders-.patch b/rpm/0020-Follow-the-synchronizationEnabled-flag-when-folders-.patch index 8db7281..f9d8ab8 100644 --- a/rpm/0020-Follow-the-synchronizationEnabled-flag-when-folders-.patch +++ b/rpm/0020-Follow-the-synchronizationEnabled-flag-when-folders-.patch @@ -1,8 +1,8 @@ -From 0316bec0142d035837e1ddbc14317ba4d8cc27d0 Mon Sep 17 00:00:00 2001 +From 6d07d9c296e0559580271fbe9e157f47149e6222 Mon Sep 17 00:00:00 2001 From: Damien Caliste Date: Fri, 24 Jan 2020 16:28:37 +0100 -Subject: [PATCH 20/24] Follow the synchronizationEnabled flag when folders are - not specified +Subject: [PATCH] Follow the synchronizationEnabled flag when folders are not + specified If the synchronizationEnabled flag is set to false, a variety of strategy, like search, folder listing, will not search in @@ -163,5 +163,5 @@ index 1f418e44..260fd580 100644 uint _total; }; -- -2.17.1 +2.26.2 diff --git a/rpm/0021-Set-new-IMAP-folders-to-inherit-SynchronizationEnabl.patch b/rpm/0021-Set-new-IMAP-folders-to-inherit-SynchronizationEnabl.patch index e987133..f43476f 100644 --- a/rpm/0021-Set-new-IMAP-folders-to-inherit-SynchronizationEnabl.patch +++ b/rpm/0021-Set-new-IMAP-folders-to-inherit-SynchronizationEnabl.patch @@ -1,8 +1,7 @@ -From 6d06465fa8907cc428facfa673ede25de52dc46a Mon Sep 17 00:00:00 2001 +From 9c1464707679de152568f6257079828c3c466265 Mon Sep 17 00:00:00 2001 From: David Llewellyn-Jones Date: Fri, 7 Feb 2020 19:29:59 +0200 -Subject: [PATCH 21/24] Set new IMAP folders to inherit SynchronizationEnabled - flag +Subject: [PATCH] Set new IMAP folders to inherit SynchronizationEnabled flag When new folders are received from the server, the client-side SynchronizationEnabled flag must be set for them. Previously they were @@ -37,5 +36,5 @@ index d78d897e..cfb11519 100644 // The reported flags pertain to the listed folder only QString folderFlags; -- -2.17.1 +2.26.2 diff --git a/rpm/0022-Set-qmf-accountscheck-to-be-run-by-the-booster.patch b/rpm/0022-Set-qmf-accountscheck-to-be-run-by-the-booster.patch index db19771..e9a66c2 100644 --- a/rpm/0022-Set-qmf-accountscheck-to-be-run-by-the-booster.patch +++ b/rpm/0022-Set-qmf-accountscheck-to-be-run-by-the-booster.patch @@ -1,7 +1,7 @@ -From e898956d0b1a5da2ae55ae2ba0530d39e9835f67 Mon Sep 17 00:00:00 2001 +From 550dfab63f14994687dc520040d149cd04ecc454 Mon Sep 17 00:00:00 2001 From: David Llewellyn-Jones Date: Wed, 25 Mar 2020 11:59:52 +0200 -Subject: [PATCH 22/24] Set qmf-accountscheck to be run by the booster +Subject: [PATCH] Set qmf-accountscheck to be run by the booster In order for qmf-accountscheck to gain the privileges needed to read the accounts database, it must be invoked by the booster (it also needs @@ -44,5 +44,5 @@ index 689ad320..15aa630e 100644 + +OTHER_FILES += systemd/*.service -- -2.17.1 +2.26.2 diff --git a/rpm/0023-Retrieve-message-lists-based-on-the-folder-sync-poli.patch b/rpm/0023-Retrieve-message-lists-based-on-the-folder-sync-poli.patch index a311306..b76c849 100644 --- a/rpm/0023-Retrieve-message-lists-based-on-the-folder-sync-poli.patch +++ b/rpm/0023-Retrieve-message-lists-based-on-the-folder-sync-poli.patch @@ -1,7 +1,7 @@ -From 0e6d9553c4306e1129a510c1a27d968daaa11eac Mon Sep 17 00:00:00 2001 +From ccebc56bdc0fcebcff8a622c93401b6c41239a78 Mon Sep 17 00:00:00 2001 From: David Llewellyn-Jones Date: Wed, 8 Jul 2020 15:51:08 +0000 -Subject: [PATCH 23/24] Retrieve message lists based on the folder sync policy +Subject: [PATCH] Retrieve message lists based on the folder sync policy Uses the folder sync policy extracted from the account and applies it when downloading messages from different folders. @@ -384,5 +384,5 @@ index 3b8663a7..7b6492ab 100644 _service->_client.newConnection(); _unavailable = true; -- -2.17.1 +2.26.2 diff --git a/rpm/0024-Apply-folder-policy-to-always-on-connection.patch b/rpm/0024-Apply-folder-policy-to-always-on-connection.patch index f2c0881..e20c113 100644 --- a/rpm/0024-Apply-folder-policy-to-always-on-connection.patch +++ b/rpm/0024-Apply-folder-policy-to-always-on-connection.patch @@ -1,7 +1,7 @@ -From b40310c55a1d555c9e9fbe486ecc89b58ca9e7f6 Mon Sep 17 00:00:00 2001 +From 5639df7e29b112a53ad1b8ff9ada906897bfab95 Mon Sep 17 00:00:00 2001 From: David Llewellyn-Jones Date: Wed, 22 Jul 2020 11:08:24 +0000 -Subject: [PATCH 24/24] Apply folder policy to always on connection +Subject: [PATCH] Apply folder policy to always on connection Changes the configuration so that the push folders are generated from the the policy and folder flags, rather than a separate configuration @@ -124,5 +124,5 @@ index 07289a1c..c8dc7b9e 100644 int ImapConfiguration::checkInterval() const -- -2.17.1 +2.26.2 diff --git a/rpm/0025-Add-missing-slash-character-as-protected-in-header-p.patch b/rpm/0025-Add-missing-slash-character-as-protected-in-header-p.patch index 6a6acbc..14c8078 100644 --- a/rpm/0025-Add-missing-slash-character-as-protected-in-header-p.patch +++ b/rpm/0025-Add-missing-slash-character-as-protected-in-header-p.patch @@ -1,4 +1,4 @@ -From a5191e0ebbbbf6b8f3636394f24499bd34f3fba6 Mon Sep 17 00:00:00 2001 +From 0b9ed226a501ce7ae67c1923335221ab9d22f3ce Mon Sep 17 00:00:00 2001 From: Damien Caliste Date: Wed, 2 Sep 2020 16:58:12 +0200 Subject: [PATCH] Add missing slash character as protected in header parameters @@ -16,10 +16,10 @@ Change-Id: Id9d43b883187317ec152eea56819822612bfe307 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/libraries/qmfclient/qmailmessage.cpp b/src/libraries/qmfclient/qmailmessage.cpp -index 71491f1a..38d1eee3 100644 +index d7678678..f51e8c02 100644 --- a/src/libraries/qmfclient/qmailmessage.cpp +++ b/src/libraries/qmfclient/qmailmessage.cpp -@@ -1956,7 +1956,8 @@ void QMailMessageHeaderFieldPrivate::setParameterEncoded(const QByteArray& name) +@@ -1960,7 +1960,8 @@ void QMailMessageHeaderFieldPrivate::setParameterEncoded(const QByteArray& name) static QByteArray protectedParameter(const QByteArray& value) { QRegExp whitespace(QLatin1String("\\s+"));