On Wed, 17 Dec 2003, Christof Drescher wrote:
> Just to make it totally clear to me: A message can be removed from the
> session-state list of \Recent messages ONLY by expunge?

Correct.

> Or the other way round: A server MUST NOT change the \Recent flag for a
> single message at any time until a session is closed or a message is
> expunged?

Correct.

By "session", we mean the state from SELECT until a subsequent SELECT,
EXAMINE, CLOSE, or LOGIN in that IMAP connection.  [There's a footnote
below about EXAMINE.]

> So my proposal of c) would be correct if I say: A server can issue a
> * 0 RECENT untagged response only as a result of expunge action prior
> to it?

Only if the EXPUNGE removed all recent mesages.


Note that there's a bit of complexity with EXAMINE.  EXAMINE is intended
to snoop at a mailbox without leaving any traces (it's not widely used by
client as far as I know).  The important thing is that EXAMINE does not
prevent a subsequent SELECT from seeing messages as \Recent; "it never
happened."

I would not worry excessively about EXAMINE other than making sure that it
doesn't leave any traces.  For example, some implementations do not see
new mail in an EXAMINE session; you have to SELECT before the new mail
appears in the mailbox.

-- Mark --

http://staff.washington.edu/mrc
Science does not emerge from voting, party politics, or public debate.
Si vis pacem, para bellum.

Reply via email to