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