On Thu, 2 Oct 2003, David Harris wrote:
> Is it reasonable for client 1 to receive this response (assuming that the
> sequence numbers are correctly adjusted as required):
> AAA EXPUNGE
> * x FETCH (FLAGS (\DELETED))
> * x EXPUNGE
> * y EXPUNGE
> AAA OK Expunge Completed

Yes.

IMAP's unsolicited data model says that any response can be received at
any time.  You should not think of untagged responses as being responses
to any particular command (that's why they're untagged), but rather as
instructions from the server to the client to update the client's state.

Now, there are some restrictions on untagged expunges to prevent
ambiguities in command pipelining (something that was never done to any
significant degree, but some people jumped up and down and held their
breath and said that it was important); and some untagged responses are
silly unless a certain command is in progress (e.g. SEARCH, LIST, etc.)
but the IMAP model requires that a client must accept any untagged
response at any time.

Thus, your scenario is not only reasonable, it is quite plausible (the UW
server can certainly do it) and a client which fails to handle it is
broken.

-- 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