diff options
author | Guilhem Moulin <guilhem@fripost.org> | 2019-11-12 01:39:29 +0100 |
---|---|---|
committer | Guilhem Moulin <guilhem@fripost.org> | 2019-11-13 06:23:57 +0100 |
commit | 3aa5593af18bd4925235d1820fd0fe7c646843aa (patch) | |
tree | 717aa3b1f6ffb2685a901f42f6a89fd6936c7c84 /Changelog | |
parent | c3bf5d306ff1396d6117774316afd998f6e9874a (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-- | Changelog | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -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 |