> 1. Which parts are case-sensitive and which parts are not?
From page 81:
(1) Except as noted otherwise, all alphabetic characters
are case-insensitive.
This means, besides what you noted, that flags are case-insensitive.
> 2. Can hierarchy delimiters change recursively (e.g., "Users" has a
> delimiter of "/" but "Users/news" has a delimiter of ".")? To what
> degree do multiple hierarchy delimiters exist in nature?
Hierarchy delimiters are constant for a particular root. A server which has multiple roots is supposed to use the # namespace convention which is there for that purpose. So, if you have USENET news, you should use something like #news.comp.mail.imap and not /Users/news/comp.mail.imap since you can't mix hierarchy delimiters in the same root.
> 3. Is there any definitive list of which servers support which
> extensions, including how they don't support them correctly (okay, that
> wasn't about the RFC itself)?
Such a list is ever changing, and listing what servers don't support them correctly is likely to result in considerable hostility aimed at the lister. It's easier to list servers that do things right: UW/Panda, Dovecot, and Cyrus. The author of Dovecot has been quite diligent in producing torture tests for servers, and he and the author of UW/Panda (me) have had a friendly competition in who can fix the problems uncovered first.
> 4. Are there any explicit pitfalls I might want to test or look out for
> when writing the testing server?
Writing an IMAP server is not for the faint-hearted or for one who hasn't read (and understood) the entire RFC. Good luck...
-- Mark --
_________________________________________________________________
Use video conversation to talk face-to-face with Windows Live Messenger.
http://www.windowslive.com/messenger/connect_your_way.html?ocid=TXT_TAGLM_WL_Refresh_messenger_video_072008