aboutsummaryrefslogtreecommitdiffstats
path: root/Changelog
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2019-11-12 01:39:29 +0100
committerGuilhem Moulin <guilhem@fripost.org>2019-11-13 06:23:57 +0100
commit3aa5593af18bd4925235d1820fd0fe7c646843aa (patch)
tree717aa3b1f6ffb2685a901f42f6a89fd6936c7c84 /Changelog
parentc3bf5d306ff1396d6117774316afd998f6e9874a (diff)
Net::IMAP::InterIMAP::push_flag_updates() bugfixes.
The UNCHANGEDSINCE test from the CONDSTORE extension was incorrectly placed after the flag list in UID STORE commands. In practice this meant the server didn't add the MODIFIED code when needed. The server won't send an untagged FETCH command (and won't increase the message's MODSEQ) if no change was made to the flag list. A panic() was incorrectly triggered in that case. When the flag list was set (by another client) to a superset of the UID STORE command currently processed, the extra flags were not synchronized. Cf. RFC 7162 sec. 3.1.3 ex. 10.
Diffstat (limited to 'Changelog')
-rw-r--r--Changelog7
1 files changed, 7 insertions, 0 deletions
diff --git a/Changelog b/Changelog
index f90c28c..763a7a1 100644
--- a/Changelog
+++ b/Changelog
@@ -87,6 +87,13 @@ interimap (0.5) upstream;
compression stream is reached.
- libinterimap: the 'compress' boolean wasn't honored.
- libinterimap: fix STARTTLS directive, broken since 0.2.
+ - libinterimap: push_flag_updates(): the UNCHANGEDSINCE test from
+ the CONDSTORE extension was incorrectly placed after the flag list in
+ UID STORE commands.
+ - libinterimap: push_flag_updates(): ignore UIDs for which no untagged
+ FETCH response was received.
+ - libinterimap: push_flag_updates(): don't ignores received updates (by
+ another client) to a superset of the desigred flag list.
-- Guilhem Moulin <guilhem@fripost.org> Fri, 10 May 2019 00:58:14 +0200