On Tue, 17 Jun 2003, Vladimir A. Butenko wrote: > And it's not a useless scholastic exercise, as - AFAIR - all IMAP-related > changes we did in CommuniGate Pro during the last 24 months were caused by > the fact that our interpretation and, hmm, "proper" interpretation of the > IMAP standard were different - on the semantics level.
I agree. Leaving aside the question of whether it is good enough for semantic requirements to implied by the syntax, the fact that certain details were not obvious to an expert implementor (albeit one not from the oldtimer IMAP crew) is reason enough to be explicit on these requirements. I appreciate the fact that when these issues have come up, you have changed CommuniGate Pro. Please continue to call attention to places where the document creates ambiguities or buried an important semantic detail because the oldtimers mistakenly though it was "obvious". On your question about case-independence of INBOX, my view is that only a 5-octet token with first octet "I" or "i", second octet "N" or "n", third octet "B" or "b", forth octet "O" or "o", and final octet "X" or "x" is defined as case-independent by the protocol. All other tokens, including tokens which contain those five octets as a substring, are interpreted by the server implementation as it sees fit. Consequently, as far as I'm concerned, a server which treats INBOX/foo and inbox/foo as the same mailbox is compliant; but so is one that treats these as different mailboxes. Clients can't depend upon either behavior. "Ouch! Doctor, it hurts when I do that!" "So don't do that." :-) > Using the samples in the RFC3501, can one assume that > if SELECT ~crispin/INBOX succeeds, then SELECT ~crispin/InBoX will succeed, > too and that it will select the same mailbox? This is uglier, especially when we consider RFC 2342. If ~ is advertised as an "other user" namespace via RFC 2342, it suggests that ~crispin/INBOX and ~crispin/InBoX should be the same thing. UW imapd is inconsistant. It doesn't do that INBOX match with the "~" other user namespace. However, if the "/" other user namespace is used, then UW imapd does treat /crispin/INBOX and /crispin/InBoX as the same. Sounds like a client can't depend upon that either. -- Mark -- http://staff.washington.edu/mrc Science does not emerge from voting, party politics, or public debate. Si vis pacem, para bellum.
