分享
 
 
 

RFC1732 - IMAP4 Compatibility with IMAP2 and IMAP2bis

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Network Working Group M. Crispin

Request for Comments: 1732 University of Washington

Category: Informational December 1994

IMAP4 COMPATIBILITY WITH IMAP2 AND IMAP2BIS

Status of this Memo

This memo provides information for the Internet community. This memo

does not specify an Internet standard of any kind. Distribution of

this memo is unlimited.

IntrodUCtion

This is a summary of hints and recommendations to enable an IMAP4

implementation to interoperate with implementations that conform to

earlier specifications. None of these hints and recommendations are

required by the IMAP4 specification; implementors must decide for

themselves whether they want their implementation to fail if it

encounters old software.

IMAP4 has been designed to be upwards compatible with earlier

specifications. For the most part, IMAP4 facilities that were not in

earlier specifications should be invisible to clients unless the

client asks for the facility.

In some cases, older servers may support some of the capabilities

listed as being "new in IMAP4" as eXPerimental extensions to the

IMAP2 protocol described in RFC1176.

This information may not be complete; it reflects current knowledge

of server and client implementations as well as "folklore" acquired

in the evolution of the protocol.

IMAP4 client interoperability with old servers

In general, a client should be able to discover whether an IMAP2

server supports a facility by trial-and-error; if an attempt to use a

facility generates a BAD response, the client can assume that the

server does not support the facility.

A quick way to check whether a server implementation supports the

IMAP4 specification is to try the CAPABILITY command. An OK response

that includes the IMAP4 capability value indicates a server that

supports IMAP4; a BAD response or one without the IMAP4 capability

value indicates an older server.

The following is a list of facilities that are only in IMAP4, and

suggestions for how new clients might interoperate with old servers:

CAPABILITY command

A BAD response to this command indicates that the server

implements IMAP2 (or IMAP2bis) and not IMAP4.

AUTHENTICATE command.

Use the LOGIN command.

LSUB and LIST commands

Try the RFC1176 FIND command.

* in a sequence

Use the number of messages in the mailbox from the EXISTS

unsolicited response.

SEARCH extensions (character set, additional criteria)

Reformulate the search request using only the searching

options listed in search_old in the IMAP4 grammar. This may

entail doing multiple searches to achieve the desired

results.

BODYSTRUCTURE fetch data item

Try to fetch the non-extensible BODY data item.

body section number 0

Fetch the entire message and extract the header.

RFC822.HEADER.LINES and RFC822.HEADER.LINES.NOT fetch data items

Use RFC822.HEADER and remove the unwanted information.

BODY.PEEK[section], RFC822.PEEK, and RFC822.TEXT.PEEK fetch data

items Use the corresponding non-PEEK versions and manually

clear the \Seen flag as necessary.

UID fetch data item and the UID commands

No equivalent capabilitity exists in older servers.

FLAGS.SILENT, +FLAGS.SILENT, and -FLAGS.SILENT store data items

Use the corresponding non-SILENT versions and ignore the

untagged FETCH responses which com eback.

The following IMAP4 facilities were introduced in the experimental

IMAP2bis revisions to RFC-1176, and may be present in a server that

does not support the CAPABILITY command:

CREATE, DELETE, and RENAME commands

To test whether these commands are present, try a CREATE

INBOX command. If the response is NO, these commands are

supported by the server. If the response is BAD, they are

not. Older servers without the CREATE capability may sup-

port implicit creation of a mailbox by a COPY command with a

non-existant name as the destination.

APPEND command

To test whether this command is present, try to append a

zero-length stream to a mailbox name that is known not to

exist (or at least, highly unlikely to exist) on the remote

system.

SUBSCRIBE and UNSUBSCRIBE commands

Try the form of these commands with the optional MAILBOX

keyWord.

EXAMINE command

Use the SELECT command instead.

flags and internal date argument to APPEND command

Try the APPEND without any flag list and internal date argu-

ments.

BODY, BODY[section], and FULL fetch data items

Use RFC822.TEXT and ALL instead. Server does not support

MIME.

PARTIAL command

Use the appropriate FETCH command and ignore the unwanted

data.

IMAP4 client implementations must accept all responses and data for-

mats documented in the IMAP4 specification, including those labeled

as obsolete. This includes the COPY and STORE unsolicited responses

and the old format of dates and times. In particular, client imple-

mentations must not treat a date/time as a fixed format string; nor

may they assume that the time begins at a particular octet.

IMAP4 client implementations must not depend upon the presence of any

server extensions that are not in the base IMAP4 specification.

The experimental IMAP2bis version specified that the TRYCREATE spe-

cial information token is sent as a separate unsolicited OK response

instead of inside the NO response.

The FIND BBOARDS, FIND ALL.BBOARDS, and BBOARD commands of RFC1176

are removed from IMAP4. There is no equivalent to the bboard com-

mands, which provided a separate namespace with implicit restrictions

on what may be done in that namespace.

Older server implementations may automatically create the destination

mailbox on COPY if that mailbox does not already exist. This was how

a new mailbox was created in older specifications. If the server

does not support the CREATE command (see above for how to test for

this), it will probably create a mailbox on COPY.

Older server implementations may not preserve flags or internal dates

on COPY. Some server implementations may not permit the preservation

of certain flags on COPY or their setting with APPEND as site policy.

IMAP4 server interoperability with old clients

In general, there should be no interoperation problem between a

server conforming to the IMAP4 specification and a well-written

client that conforms to an earlier specification. Known problems are

noted below:

Poor wording in the description of the CHECK command in earlier

specifications implied that a CHECK command is the way to get the

current number of messages in the mailbox. This is incorrect. A

CHECK command does not necessarily result in an EXISTS response.

Clients must remember the most recent EXISTS value sent from the

server, and should not generate unnecessary CHECK commands.

An incompatibility exists with COPY in IMAP4. COPY in IMAP4

servers does not automatically create the destination mailbox if

that mailbox does not already exist. This may cause problems with

old clients that expect automatic mailbox creation in COPY.

The PREAUTH unsolicited response is new in IMAP4. It is highly

unlikely that an old client would ever see this response.

The format of dates and times has changed due to the impending end

of the century. Clients that fail to accept a four-digit year or

a signed four-digit timezone value will not work properly with

IMAP4.

An incompatibility exists with the use of "\" in quoted strings.

This is best avoided by using literals instead of quoted strings

if "\" or <"> is embedded in the string.

Security Considerations

Security issues are not discussed in this memo.

Author's Address:

Mark R. Crispin

Networks and Distributed Computing, JE-30

University of Washington

Seattle, WA 98195

Phone: (206) 543-5762

EMail: MRC@CAC.Washington.EDU

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有