Re: [Imap-protocol] Courier bug(?)
Michael M Slusarz <[email protected]>
| Newsgroups | gmane.mail.imap.general |
|---|---|
| Message-ID | <20130124093456.Horde.GumxJDEby0tpe4DRTMul6g1@bigworm.curecanti.org> |
Quoting Bron Gondwana <[email protected]>: > I always send UID for QRESYNC, and I even have a handy comment about it: > > /* http://www.rfc-editor.org/errata_search.php?rfc=5162 > * Errata ID: 1807 - MUST send UID and MODSEQ to all > * untagged FETCH unsolicited responses */ > if (usinguid || state->qresync) > prot_printf(state->out, " UID %u", im->record.uid); > if (printmodseq || state->qresync) > prot_printf(state->out, " MODSEQ (" MODSEQ_FMT ")", > im->record.modseq); Ugh. I *knew* I previously read somewhere that UID was required for all FLAGS responses after QRESYNC was activated. I was going to check the errata before sending out my original message, but got distracted. And there is still a gap in coverage when only CONDSTORE is available (or a server implementation of QRESYNC that doesn't follow the errata) - you can still receive untagged FLAGS responses that contain MODSEQ but not UID data: a SELECT INBOX (CONDSTORE) [...] * 3 EXISTS * OK [HIGHESTMODSEQ 5] Highest a OK [READ-WRITE] SELECT completed. b UID FETCH 5 (UID) * 1 FETCH (UID 5) * 2 FETCH (FLAGS (\Seen) MODSEQ (6)) * 3 FETCH (FLAGS (\Seen) MODSEQ (6) UID 15) b OK FETCH completed. Granted, this isn't likely from a practical standpoint, but it is a possibility. And one I probably haven't considered in my code. Arrgh. michael _______________________________________________ Imap-protocol mailing list [email protected] http://mailman2.u.washington.edu/mailman/listinfo/imap-protocol