The following issue has been UPDATED.
======================================================================
http://www.dbmail.org/mantis/view.php?id=591
======================================================================
Reported By: tss
Assigned To: paul
======================================================================
Project: DBMail
Issue ID: 591
Category: IMAP daemon
Reproducibility: always
Severity: minor
Priority: normal
Status: feedback
target:
======================================================================
Date Submitted: 12-May-07 01:13 CEST
Last Modified: 12-May-07 22:30 CEST
======================================================================
Summary: EXPUNGE and multiple sessions breaks IMAP protocol
Description:
Using MySQL as backend if it matters.
I open two IMAP sessions to the same mailbox and execute commands:
Session 1:
x append inbox {10}
+ OK gimme that string
From: foo
x OK APPEND completed
x store 1 +flags \deleted
* 1 FETCH (FLAGS (\Seen \Answered \Deleted \Draft))
x OK STORE completed
x expunge
* 1 RECENT
* 1 EXPUNGE
x OK EXPUNGE completed
x fetch * uid
* 16 FETCH (UID 414)
x OK FETCH completed
Sesssion 2:
x noop
* 0 RECENT
* 1 EXPUNGE
* 15 FETCH (FLAGS ())
* 16 FETCH (FLAGS ())
x OK NOOP completed
The session 2 saw 16 messages originally. It should have given "* 16
EXISTS" reply after the EXPUNGE.
======================================================================
----------------------------------------------------------------------
paul - 12-May-07 20:06
----------------------------------------------------------------------
OK, I misread section 5.2 in rfc3501. Fixed in svn.
----------------------------------------------------------------------
tss - 12-May-07 20:46
----------------------------------------------------------------------
SVN didn't compile with me, I guess you meant <= instead of =< ?
But now I don't see any EXISTS replies at all, ever.
----------------------------------------------------------------------
paul - 12-May-07 22:30
----------------------------------------------------------------------
Quite right.
The fact that no EXISTS responses are ever sent during EXPUNGE responses
is to accomodate client bugs (Mail.app <2.1, and Outlook) that experience
synchronization problems if EXISTS/RECENT are sent in reply to commands
other that NOOP or CHECK.
This behaviour was noted by the docecot team, and confirmed by dbmail
users as well (though only anecdotally). Do you have additional
information? I don't like having to cater to magical clients quirks rather
than the RFC, but outlook compatibility is a hard requirement.
I'm open to suggestions here. I'm downscaling the severity of this report
for now.
Issue History
Date Modified Username Field Change
======================================================================
12-May-07 01:13 tss New Issue
12-May-07 20:06 paul Note Added: 0002163
12-May-07 20:06 paul Assigned To => paul
12-May-07 20:06 paul Status new => resolved
12-May-07 20:06 paul Resolution open => fixed
12-May-07 20:06 paul Fixed in Version => 2.2.5
12-May-07 20:46 tss Status resolved => feedback
12-May-07 20:46 tss Resolution fixed => reopened
12-May-07 20:46 tss Note Added: 0002164
12-May-07 22:30 paul Note Added: 0002165
12-May-07 22:30 paul Severity major => minor
======================================================================
_______________________________________________
Dbmail-dev mailing list
[email protected]
http://twister.fastxs.net/mailman/listinfo/dbmail-dev