Network Working Group                                           J. Myers
Request for Comments: 2359                       Netscape Communications
Category: Standards Track                                      June 1998
        
Network Working Group                                           J. Myers
Request for Comments: 2359                       Netscape Communications
Category: Standards Track                                      June 1998
        

IMAP4 UIDPLUS extension

IMAP4 UIDPLUS扩展

Status of this Memo

本备忘录的状况

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。

Copyright Notice

版权公告

Copyright (C) The Internet Society (1998). All Rights Reserved.

版权所有(C)互联网协会(1998年)。版权所有。

IESG NOTE

IESG注释

The IMAP extension described here assumes a particular means of using IMAP to support disconnected operation. However, this means of supporting disconnected operation is not yet documented. Also, there are multiple theories about how best to do disconnected operation in IMAP, and as yet, there is no consensus on which one should be adopted as a standard.

此处描述的IMAP扩展假定使用IMAP支持断开连接操作的特定方式。然而,这种支持断开连接操作的方法尚未记录。此外,关于如何最好地在IMAP中执行断开连接操作,存在多种理论,但对于应采用哪种理论作为标准,还没有达成共识。

This document is being approved as a Proposed Standard because it does not appear to have technical flaws in itelf. However, approval of this document as a Proposed Standard should not be considered an IETF endorsement of any particular means of doing disconnected operation in IMAP.

本文件被批准为拟议标准,因为其自身似乎没有技术缺陷。然而,将本文件批准为拟议标准不应被视为IETF对在IMAP中执行断开连接操作的任何特定方法的认可。

Table of Contents

目录

   1.   Abstract ..............................................    2
   2.   Conventions Used in this Document .....................    2
   3.   Introduction and Overview .............................    2
   4.   Features ..............................................    2
   4.1. UID EXPUNGE Command ...................................    2
   4.2. APPENDUID response code ...............................    3
   4.3. COPYUID response code .................................    4
   5.   Formal Syntax .........................................    4
   6.   References ............................................    4
   7.   Security Considerations ...............................    5
   8.   Author's Address ......................................    5
   9.   Full Copyright Statement ..............................    6
        
   1.   Abstract ..............................................    2
   2.   Conventions Used in this Document .....................    2
   3.   Introduction and Overview .............................    2
   4.   Features ..............................................    2
   4.1. UID EXPUNGE Command ...................................    2
   4.2. APPENDUID response code ...............................    3
   4.3. COPYUID response code .................................    4
   5.   Formal Syntax .........................................    4
   6.   References ............................................    4
   7.   Security Considerations ...............................    5
   8.   Author's Address ......................................    5
   9.   Full Copyright Statement ..............................    6
        
1. Abstract
1. 摘要

The UIDPLUS extension of the Internet Message Access Protocol [IMAP4] provides a set of features intended to reduce the amount of time and resources used by some client operations. The features in UIDPLUS are primarily intended for disconnected-use clients.

Internet消息访问协议[IMAP4]的UIDPLUS扩展提供了一组功能,旨在减少某些客户端操作使用的时间和资源量。UIDPLUS中的功能主要用于断开连接的客户端。

2. Conventions Used in this Document
2. 本文件中使用的公约

In examples, "C:" and "S:" indicate lines sent by the client and server respectively.

在示例中,“C:”和“S:”分别表示客户端和服务器发送的行。

The key words "MUST", "MUST NOT", "SHOULD", "SHOULD NOT", and "MAY" in this document are to be interpreted as defined in "Key words for use in RFCs to Indicate Requirement Levels" [KEYWORDS].

本文件中的关键词“必须”、“不得”、“应该”、“不应该”和“可能”应按照“RFC中用于指示需求水平的关键词”中的定义进行解释[关键词]。

3. Introduction and Overview
3. 导言和概述

The UIDPLUS extension is present in any IMAP4 server implementation which returns "UIDPLUS" as one of the supported capabilities to the CAPABILITY command. The UIDPLUS extension contains one additional command and additional data returned with successful APPEND and COPY commands.

UIDPLUS扩展存在于任何IMAP4服务器实现中,该实现将“UIDPLUS”作为支持的功能之一返回给CAPABILITY命令。UIDPLUS扩展包含一个附加命令,以及通过成功的APPEND和COPY命令返回的附加数据。

Clients that wish to use the new command in UIDPLUS must of course first test for the presence of the extension by issuing a CAPABILITY command. Each of the features in UIDPLUS are optimizations; clients can provide the same functionality, albeit more slowly, by using commands in the base protocol. With each feature, this document recommends a fallback approach to take when the UIDPLUS extension is not supported by the server.

当然,希望在UIDPLUS中使用新命令的客户机必须首先通过发出CAPABILITY命令来测试是否存在扩展。UIDPLUS中的每个特性都是优化;通过使用基本协议中的命令,客户端可以提供相同的功能,尽管速度较慢。对于每项功能,本文档都建议在服务器不支持UIDPLUS扩展时采用回退方法。

4. Features
4. 特征
4.1. UID EXPUNGE Command
4.1. UID删除命令

Arguments: message set

参数:消息集

Data: untagged responses: EXPUNGE

数据:未标记的响应:删除

Result: OK - expunge completed NO - expunge failure (e.g. permission denied) BAD - command unknown or arguments invalid

结果:确定-删除完成否-删除失败(例如权限被拒绝)错误-命令未知或参数无效

The UID EXPUNGE command permanently removes from the currently selected mailbox all messages that both have the \Deleted flag set and have a UID that is included in the specified message set. If a message either does not have the \Deleted flag set or is has a UID that is not included in the specified message set, it is not affected.

UID EXPUNGE命令将从当前选定的邮箱中永久删除所有设置了\Deleted标志且UID包含在指定邮件集中的邮件。如果消息未设置\Deleted标志,或者具有未包含在指定消息集中的UID,则不受影响。

This command may be used to ensure that a replayed EXPUNGE command does not remove any messages that have been marked as \Deleted between the time that the user requested the expunge operation and the time the server processes the command.

此命令可用于确保在用户请求删除操作和服务器处理该命令之间,重播的删除命令不会删除标记为\已删除的任何消息。

If the server does not support the UIDPLUS capability, the client should fall back to using the STORE command to temporarily remove the \Deleted flag from messages it does not want to remove. The client could alternatively fall back to using the EXPUNGE command, risking the unintended removal of some messages.

如果服务器不支持UIDPLUS功能,则客户端应返回使用STORE命令从不希望删除的消息中临时删除\Deleted标志。客户机也可以返回使用EXPUNGE命令,冒着意外删除某些消息的风险。

   Example:    C: A003 UID EXPUNGE 3000:3002
               S: * 3 EXPUNGE
               S: * 3 EXPUNGE
               S: * 3 EXPUNGE
               S: A003 OK UID EXPUNGE completed
        
   Example:    C: A003 UID EXPUNGE 3000:3002
               S: * 3 EXPUNGE
               S: * 3 EXPUNGE
               S: * 3 EXPUNGE
               S: A003 OK UID EXPUNGE completed
        
4.2. APPENDUID response code
4.2. 附录UID响应代码

Successful APPEND commands return an APPENDUID response code in the tagged OK response. The APPENDUID response code contains as arguments the UIDVALIDITY of the destination mailbox and the UID assigned to the appended message.

成功的APPEND命令在标记的OK响应中返回APPENDUID响应代码。APPENDUID响应代码包含目标邮箱的UID有效性和分配给附加邮件的UID作为参数。

If the server does not support the UIDPLUS capability, the client can only discover this information by selecting the destination mailbox and issuing FETCH commands.

如果服务器不支持UIDPLUS功能,则客户端只能通过选择目标邮箱并发出FETCH命令来发现此信息。

   Example:    C: A003 APPEND saved-messages (\Seen) {310}
               C: Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
               C: From: Fred Foobar <foobar@Blurdybloop.COM>
               C: Subject: afternoon meeting
               C: To: mooch@owatagu.siam.edu
               C: Message-Id: <B27397-0100000@Blurdybloop.COM>
               C: MIME-Version: 1.0
               C: Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
               C:
               C: Hello Joe, do you think we can meet at 3:30 tomorrow?
               C:
               S: A003 OK [APPENDUID 38505 3955] APPEND completed
        
   Example:    C: A003 APPEND saved-messages (\Seen) {310}
               C: Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
               C: From: Fred Foobar <foobar@Blurdybloop.COM>
               C: Subject: afternoon meeting
               C: To: mooch@owatagu.siam.edu
               C: Message-Id: <B27397-0100000@Blurdybloop.COM>
               C: MIME-Version: 1.0
               C: Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
               C:
               C: Hello Joe, do you think we can meet at 3:30 tomorrow?
               C:
               S: A003 OK [APPENDUID 38505 3955] APPEND completed
        
4.3. COPYUID response code
4.3. COPYUID响应代码

Successful COPY and UID COPY commands return a COPYUID response code in the tagged OK response whenever at least one message was copied. The COPYUID response code contains as an argument the UIDVALIDITY of the appended-to mailbox, a message set containing the UIDs of the messages copied to the destination mailbox, in the order they were copied, and a message containing the UIDs assigned to the copied messages, in the order they were assigned. Neither of the message sets may contain extraneous UIDs or the symbol '*'.

只要至少复制了一条消息,成功的COPY和UID COPY命令就会在标记的OK响应中返回COPYUID响应代码。COPYUID响应代码作为参数包含附加到邮箱的UID有效性、包含复制到目标邮箱的邮件的UID(按复制顺序)的邮件集,以及包含分配给复制邮件的UID(按分配顺序)的邮件。这两个消息集都不能包含无关的UID或符号“*”。

If the server does not support the UIDPLUS capability, the client can only discover this information by selecting the destination mailbox and issuing FETCH commands.

如果服务器不支持UIDPLUS功能,则客户端只能通过选择目标邮箱并发出FETCH命令来发现此信息。

   Example:    C: A003 COPY 2:4 MEETING
               S: A003 OK [COPYUID 38505 304,319:320 3956:3958] Done
               C: A003 UID COPY 305:310 MEETING
               S: A003 OK Done
        
   Example:    C: A003 COPY 2:4 MEETING
               S: A003 OK [COPYUID 38505 304,319:320 3956:3958] Done
               C: A003 UID COPY 305:310 MEETING
               S: A003 OK Done
        
5. Formal Syntax
5. 形式语法

The following syntax specification uses the augmented Backus-Naur Form (BNF) notation as specified in [RFC-822] as modified by [IMAP4]. Non-terminals referenced but not defined below are as defined by [IMAP4].

以下语法规范使用[RFC-822]中指定的、经[IMAP4]修改的增广巴科斯诺尔形式(BNF)表示法。以下引用但未定义的非端子由[IMAP4]定义。

Except as noted otherwise, all alphabetic characters are case-insensitive. The use of upper or lower case characters to define token strings is for editorial clarity only. Implementations MUST accept these strings in a case-insensitive fashion.

除非另有说明,否则所有字母字符都不区分大小写。使用大写或小写字符定义标记字符串仅为编辑目的。实现必须以不区分大小写的方式接受这些字符串。

   resp_code_apnd  ::= "APPENDUID" SPACE nz_number SPACE uniqueid
        
   resp_code_apnd  ::= "APPENDUID" SPACE nz_number SPACE uniqueid
        
   resp_code_copy  ::= "COPYUID" SPACE nz_number SPACE set SPACE set
        
   resp_code_copy  ::= "COPYUID" SPACE nz_number SPACE set SPACE set
        
   uid_expunge     ::= "UID" SPACE "EXPUNGE" SPACE set
        
   uid_expunge     ::= "UID" SPACE "EXPUNGE" SPACE set
        
6. References
6. 工具书类

[IMAP4] Crispin, M., "Internet Message Access Protocol - Version 4rev1", RFC 2060, December 1996.

[IMAP4]Crispin,M.,“互联网消息访问协议-版本4rev1”,RFC20601996年12月。

[KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[关键词]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。

[RFC-822] Crocker, D., "Standard for the Format of ARPA Internet Text Messages", STD 11, RFC 822, August 1982.

[RFC-822]Crocker,D.,“ARPA互联网文本信息格式标准”,STD 11,RFC 822,1982年8月。

7. Security Considerations
7. 安全考虑

There are no known security issues with this extension.

此扩展没有已知的安全问题。

8. Author's Address
8. 作者地址

John Gardiner Myers Netscape Communications 501 East Middlefield Road Mail Stop MV-029 Mountain View, CA 94043

约翰·加德纳·迈尔斯网景通信公司501东米德菲尔德路邮递站MV-029加利福尼亚州山景城94043

   EMail: jgmyers@netscape.com
        
   EMail: jgmyers@netscape.com
        
9. Full Copyright Statement
9. 完整版权声明

Copyright (C) The Internet Society (1998). All Rights Reserved.

版权所有(C)互联网协会(1998年)。版权所有。

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。