On Thu, 9 Oct 2003, Marc Groot Koerkamp wrote:
> According me the courier response is wrong, uw and cyrus responses are
> right.
Courier is quite broken, and has always been broken. Courier is not an
IMAP server; and sites which run Courier do not offer IMAP.
I gave up on its author some time ago. He refuses to fix the bugs in his
server, and instead demands that the protocol should conform to what he
thinks it should be (which, in his mind, seems to be "whatever works with
Mozilla and Outlook" and "doesn't cause the Courier code to be
spaghetti"). It is a waste of breath to attempt to talk with him; and he
is most emphatically not an authority on IMAP.
A good rule of thumb if you have a question about the protocol is to see
how Courier is different from UW or Cyrus; in all cases Courier defines
how *NOT* to do it.
In the c-client library's IMAP client code, the "/loser" flag exists
especially for Courier. If you open a mailstream with a name such as:
{broken.example.com/loser}inbox
you get the following changes:
1) Compensates for Courier's misimplementation of sequence ranges.
2) Never sends an atom since Courier misparses them.
3) Removes spurious personal names from address structures (Courier
sends [EMAIL PROTECTED] rather than NIL).
4) Does SEARCH, SORT, and THREAD locally (Courier misimplements all of
these).
That way, c-client applications can get something approaching the correct
behavior. There's probably more that needs to be done by an IMAP client
to work with Courier protocol.
> Finally, what's the use of untagged NO responses (warnings) when each
> server has it own specific warnings.
An untagged NO is useful to report some intermediate issue which does not
necessary affect the result of the entire command. It is primarily for
the information of a human user at the client, and not for the client
software. Tagged OK/NO/BAD and extra codes inside brackets are the
mechanism for providing information to a client.
-- Mark --
http://staff.washington.edu/mrc
Science does not emerge from voting, party politics, or public debate.
Si vis pacem, para bellum.