IMAP sort is treated completely wrong. The arguments are NOT ["charset" charset-atom] search...
but actually: program-list charset-atom search... Thusly, I should be able to say: . SORT (DATE REVERSE SUBJECT) US-ASCII ALL NOT DELETED but this doesn't work. See http://www.ietf.org/internet-drafts/draft-ietf-imapext-sort-17.txt for the current version of the specification for the IMAP SORT extension. Worse still, if I actually go ahead and: . SORT CHARSET US-ASCII ALL NOT DELETED I get garbage: * SORT 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 This is completely wrong. If "SORT" isn't supported, it MUST not be announced when one says ". CAPABILITY" Please remove it from CAPABILITY until this is fixed. -- Internet Connection High Quality Web Hosting http://www.internetconnection.net/
Index: imap4.h =================================================================== RCS file: /cvsroot-dbmail/dbmail/imap4.h,v retrieving revision 1.47 diff -u -r1.47 imap4.h --- imap4.h 2005/01/07 12:46:39 1.47 +++ imap4.h 2005/03/01 00:39:35 @@ -34,7 +34,7 @@ #define IMAP_SERVER_VERSION VERSION //#define IMAP_CAPABILITY_STRING "IMAP4 IMAP4rev1 AUTH=LOGIN QUOTA" -#define IMAP_CAPABILITY_STRING "IMAP4 IMAP4rev1 AUTH=LOGIN ACL NAMESPACE SORT" +#define IMAP_CAPABILITY_STRING "IMAP4 IMAP4rev1 AUTH=LOGIN ACL NAMESPACE" #define IMAP_TIMEOUT_MSG "* BYE dbmail IMAP4 server signing off due to timeout\r\n" /* max number of BAD/NO responses */