On Tue, 4 May 2004, Mike Wener wrote:
What exactly is the definition of "unsolicited"?

There are two definitions.

One is any untagged response (that is, only tagged responses are "solicited").

The other is an untagged response which does not have any obvious relationship to the command.

I prefer the first definition. Entirely too many people associate untagged responses with client commands, and think that they can only happen with certain client commands. I've had long weary debates with people who insisted that UW imapd was broken because their client didn't expect a particular response when it got one.

It may be that a particularly untagged response is only *likely* with certain client commands, but it can happen with *any* command or (with the exception of untagged EXPUNGE) with no command in progress at all.

Would it be in the bounds of the specification for a server to send a LIST Response during a NOOP for example?

Yes.

Whether that means anything today is open to debate; but it may mean something tommorrow, and at the very least your client has to handle it well enough to ignore it.

rfc3501 Section 7. seems to imply that the client may be sent any untagged response, but Section 7.2.2 does not carry a statement saying, for example, that a LIST Response may be sent unilaterally. Whereas, I notice the FETCH Response clearly states the response may be sent unilaterally.

With the exception of EXPUNGE, *ALL* untagged responses may be sent unilaterally.


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