I'm doing compatibility testing with various IMAP clients, one of them
being Outlook 2000. I tried to delete a folder using Outlook 2000 and got
back "Cannot delete selected folder." I started a sniffit and tried the
delete again. I caught Outlook 2000 doing this dirty deed:

000D SELECT ""
000E LIST "" "Folders.foobar.*"
000F LSUB "" "Folders.foobar"
000G LSUB "" "Folders.foobar.*"
000H DELETE "Folders.foobar"

("Folders" is what I have renamed the personal namespace.)

and Courier replied with this:

000D NO Invalid mailbox
000E OK LIST completed
* LSUB (\HasNoChildren) "." "Folders.foobar"
000F OK LSUB completed
000G OK LSUB completed
000H NO Cannot delete selected folder.

I agree that Outlook 2000 should just use CLOSE in 000D up there, but
according to the RFC a failed SELECT leaves no folder selected. So it
seems the subsequent DELETE should be allowed, yeah?

I think the code in imapd.c is taking the approach that if the client
command doesn't parse then a SELECT is not actually happening, so there's
no need to unselect the current mailbox. But SELECT "" is syntactically
valid isn't it? So it should parse, then fail, leaving us in an unselected
state.

-- 
Adrian Hosey
Tetsujin, Kiva Networking
A disaster recovery plan that has not been tested is not a plan; it's a
proposal. - W. Curtis Preston


_______________________________________________
courier-users mailing list
[EMAIL PROTECTED]
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users

Reply via email to