< draft-leiba-imap-implement-guide-06.txt   draft-leiba-imap-implement-guide-07.txt >
Network Working Group B. Leiba Network Working Group B. Leiba
Internet Draft IBM T.J. Watson Research Center Internet Draft IBM T.J. Watson Research Center
Document: draft-leiba-imap-implement-guide-06.txt April 1998 Document: draft-leiba-imap-implement-guide-07.txt May 1998
Expires September 1998 Expires October 1998
IMAP4 Implementation Recommendations IMAP4 Implementation Recommendations
Status of this Document Status of this Document
This document provides information for the Internet community. This This document provides information for the Internet community. This
document does not specify an Internet standard of any kind. document does not specify an Internet standard of any kind.
Distribution of this document is unlimited. Distribution of this document is unlimited.
This document is an Internet Draft. Internet Drafts are working This document is an Internet Draft. Internet Drafts are working
documents of the Internet Engineering Task Force (IETF), its Areas, documents of the Internet Engineering Task Force (IETF), its Areas,
and its Working Groups. Note that other groups may also distribute and its Working Groups. Note that other groups may also distribute
working documents as Internet Drafts. working documents as Internet Drafts.
Internet Drafts are draft documents valid for a maximum of six Internet Drafts are draft documents valid for a maximum of six
months. Internet Drafts may be updated, replaced, or obsoleted by months. Internet Drafts may be updated, replaced, or obsoleted by
other documents at any time. It is not appropriate to use Internet other documents at any time. It is not appropriate to use Internet
Drafts as reference material or to cite them other than as a "working Drafts as reference material or to cite them other than as a "working
draft" or "work in progress". draft" or "work in progress".
To view the entire list of current Internet-Drafts, please check To view the entire list of current Internet-Drafts, please check the
the "1id-abstracts.txt" listing contained in the Internet-Drafts "1id-abstracts.txt" listing contained in the Internet-Drafts Shadow
Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net Directories on ftp.is.co.za (Africa), ftp.nordu.net (Northern
(Northern Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au (Pacific
(Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast).
(US West Coast).
A revised version of this draft document will be submitted to the RFC A revised version of this draft document will be submitted to the RFC
editor. Discussion and suggestions for improvement are requested. editor. Discussion and suggestions for improvement are requested.
This document will expire by the end of September 1998. This document will expire by the end of October 1998.
1. Abstract 1. Abstract
The IMAP4 specification [RFC-2060] describes a rich protocol for use The IMAP4 specification [RFC-2060] describes a rich protocol for use
in building clients and servers for storage, retrieval, and in building clients and servers for storage, retrieval, and
manipulation of electronic mail. Because the protocol is so rich and manipulation of electronic mail. Because the protocol is so rich and
has so many implementation choices, there are often trade-offs that has so many implementation choices, there are often trade-offs that
must be made and issues that must be considered when designing such must be made and issues that must be considered when designing such
clients and servers. This document attempts to outline these issues clients and servers. This document attempts to outline these issues
and to make recommendations in order to make the end products as and to make recommendations in order to make the end products as
skipping to change at page 17, line 41 skipping to change at page 17, line 41
users to enter qualified mailbox names containing them, server users to enter qualified mailbox names containing them, server
implementations SHOULD use delimiter characters that users generally implementations SHOULD use delimiter characters that users generally
expect to see as name separators. The most common characters used expect to see as name separators. The most common characters used
for this are "/" (as in Unix file names), "\" (as in OS/2 and Windows for this are "/" (as in Unix file names), "\" (as in OS/2 and Windows
file names), and "." (as in news groups). There is little to choose file names), and "." (as in news groups). There is little to choose
among these apart from what users may expect or what is dictated by among these apart from what users may expect or what is dictated by
the underlying file system, if any. One consideration about using the underlying file system, if any. One consideration about using
"\" is that it's also a special character in the IMAP protocol. "\" is that it's also a special character in the IMAP protocol.
While the use of other hierarchy delimiter characters is permissible, While the use of other hierarchy delimiter characters is permissible,
A DESIGNER IS WELL ADVISED TO STAY WITH ONE FROM THIS SET unless the A DESIGNER IS WELL ADVISED TO STAY WITH ONE FROM THIS SET unless the
server is intended for special purposes only. Characters such as server is intended for special purposes only. Implementers might be
"-", "_", ";", "&", "#", "@", and "!" may be considered, but the thinking about using characters such as "-", "_", ";", "&", "#", "@",
implementer should be aware of the surprise to the user as well as of and "!", but they should be aware of the surprise to the user as well
the effect on URLs and other external specifications (since some of as of the effect on URLs and other external specifications (since
these characters have special meanings there). Also, a server that some of these characters have special meanings there). Also, a
uses "\" (and clients of such a server) must remember to escape that server that uses "\" (and clients of such a server) must remember to
character in quoted strings or to send literals instead. Literals escape that character in quoted strings or to send literals instead.
are recommended over escaped characters in quoted strings in order to Literals are recommended over escaped characters in quoted strings in
maintain compatibility with older IMAP versions that did not allow order to maintain compatibility with older IMAP versions that did not
escaped characters in quoted strings (but check the grammar to see allow escaped characters in quoted strings (but check the grammar to
where literals are allowed): see where literals are allowed):
C: 001 LIST "" {13} C: 001 LIST "" {13}
S: + send literal S: + send literal
C: this\%\%\%\h* C: this\%\%\%\h*
S: * LIST () "\\" {27} S: * LIST () "\\" {27}
S: this\is\a\mailbox\hierarchy S: this\is\a\mailbox\hierarchy
S: 001 OK LIST complete S: 001 OK LIST complete
In any case, a server SHOULD NOT use normal alpha-numeric characters In any case, a server SHOULD NOT use normal alpha-numeric characters
(such as "X" or "0") as delimiters; a user would be very surprised to (such as "X" or "0") as delimiters; a user would be very surprised to
 End of changes. 4 change blocks. 
20 lines changed or deleted 19 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/