[imapext] Review of draft-ietf-imapapnd-appendlimit-extension-00
Alexey Melnikov <alexey.melnikov@isode.com> Sun, 26 July 2015 14:53 UTC
Return-Path: <alexey.melnikov@isode.com>
X-Original-To: imapext@ietfa.amsl.com
Delivered-To: imapext@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BF37A1A8A15 for <imapext@ietfa.amsl.com>; Sun, 26 Jul 2015 07:53:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.011
X-Spam-Level:
X-Spam-Status: No, score=-2.011 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id wcoiikv279SF for <imapext@ietfa.amsl.com>; Sun, 26 Jul 2015 07:53:24 -0700 (PDT)
Received: from statler.isode.com (statler.isode.com [217.34.220.151]) by ietfa.amsl.com (Postfix) with ESMTP id 27DB71A8A06 for <imapext@ietf.org>; Sun, 26 Jul 2015 07:53:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1437922403; d=isode.com; s=selector; i=@isode.com; bh=YLnP7MonSMq2w62M4FRwVVlrrvO4LM5H2j4eTPZx+WA=; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:Cc:MIME-Version: In-Reply-To:References:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description; b=ITk33NSWgOGC55EUHLrUw4JETVlfYWbp/8MuhE7JdQhX2gM7vV2NOVCyQKDJfCZYyzRbzP t6g5ZCKlUELoUmTRd/vjLhKS6fq8ExYqCjHKmb7z1hsduMA8XFzPHo+h8Ni+4Q/WNkHuNO Au2u2QzF4D7vVvHe2iGdseHcIiNHcVY=;
Received: from [192.168.0.5] (cpc5-nmal20-2-0-cust24.19-2.cable.virginm.net [92.234.84.25]) by statler.isode.com (submission channel) via TCP with ESMTPSA id <VbT0XwB-WKy4@statler.isode.com>; Sun, 26 Jul 2015 15:53:22 +0100
To: IMAPAPND WG <imapext@ietf.org>
From: Alexey Melnikov <alexey.melnikov@isode.com>
X-Enigmail-Draft-Status: N1110
Message-ID: <55B4F457.2050608@isode.com>
Date: Sun, 26 Jul 2015 15:53:11 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-transfer-encoding: quoted-printable
Archived-At: <http://mailarchive.ietf.org/arch/msg/imapext/zjNB7fER2VOsNNKEmhySsk-_W0k>
Subject: [imapext] Review of draft-ietf-imapapnd-appendlimit-extension-00
X-BeenThere: imapext@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Discussion of IMAP extensions <imapext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/imapext>, <mailto:imapext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/imapext/>
List-Post: <mailto:imapext@ietf.org>
List-Help: <mailto:imapext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/imapext>, <mailto:imapext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 26 Jul 2015 14:53:25 -0000
Hi, SM asked me to review the document, so I reread everything for the first time in a couple of months. Here are my comments: > 2. APPENDLIMIT Extension > > An IMAP server that supports APPENDLIMIT advertises this by including > the word APPENDLIMIT in its capability list. IMAP server shall publish > the supported mail upload size as part of CAPABILITY response. As per the recent discussion, the above text should be amended to make it clear that both "APPENDLIMIT" and "APPENDLIMIT=<value>" can be advertised. As traditionally IMAP uses exact match for capabilities, "APPENDLIMIT=..." is not going to work for a client that looks for exact match with "APPENDLIMIT". > The > advertised upload limit is common across the mailboxes, but client > can still issue SELECT/EXAMINE or LIST command to get the mailbox > specific upload limit set by the IMAP server. In this case, > APPENDLIMIT value obtained as part of SELECT/EXAMINE or LIST command > takes precedence over the value returned as part of CAPABILITY > response. [snip] > 3. Mailbox specific APPENDLIMIT > > IMAP server can still have mailbox specific APPENDLIMIT restriction, > which may not be advertised as part of CAPABILITY response. In this > case, client can issue SELECT/EXAMINE command to get the per mailbox > specific limit set by the server. Similarly, if client wish to know > the mailbox specific limit in authenticated state, can be done by > issuing the LIST command in combination with STATUS command. I think you should clarify here that a standalone STATUS command can also be used. > 3.1 SELECT response > > Client can get the per mailbox append limit by issuing the SELECT/ > EXAMINE command. APPENDLIMIT size to this mailbox is obtained as part > of untagged OK response. In this case, this APPENDLIMIT value will > supersede the value received as part of CAPABILITY response. If no > per-mailbox APPENDLIMIT is specified for a folder, but the server did > specify a common APPENDLIMIT in the CAPABILITY response, then the > common APPENDLIMIT applies to that folder. > > C: t2 SELECT INBOX > S: * 172 EXISTS > S: * OK [APPENDLIMIT 257890] Maximum upload limit > S: [...] > S: t2 OK [READ-WRITE] SELECT completed After Chris Newman's comment that a new SELECT/EXAMINE response code going to waste lots of bandwidth as most of the time it would be returned and the client is not going to care, I am wondering again if we should remove the SELECT response. But I don't have strong feelings on this. > In the above example, APPENDLIMIT represents the maximum upload size for > this mailbox. > > OK [APPENDLIMIT <n>] Maximum upload limit for this mailbox, in bytes. > Refer to section 5 for more information. If this > is missing, the client can always honour the > value received as part of CAPABILITY response. It occurred to me that this response code can also be returned in a NO response on a failed APPEND. It might be worth saying that. (This would cover a slightly different case from TOOBIG response code.) > 3.2 LIST response > > IMAP client can get the mailbox specific APPENDLIMIT in authenticated > state, where it do not need to issue SELECT/EXAMINE command. LIST > command in combination with STATUS command can be issued to get the per > mailbox specific APPENDLIMIT set by the server. > Refer RFC 5819 for the > usage of LIST command in combination with STATUS command. Note that a > server implementing this extension, is syntactically compatible with > RFC 5819, however support for RFC 5258 or RFC 5819 is not required, > when implementing this extension. After the discussion with Jamie I am wondering if we have to require use of extended LIST with the new APPENDLIMIT STATUS item. Maybe we can just require implementation of the APPENDLIMIT STATUS item, and STATUS-in-LIST will take care of this, if also advertised? > 5. Formal syntax > > The following syntax specification uses the Augmented Backus-Naur > Form (ABNF) notation as specified in [RFC5234] including the core > rules in Appendix B.1. [RFC3501] defines the non-terminals > "capability", "resp-text-code" and "status-att". > 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. > > appendlimit-cap = "APPENDLIMIT" ["=" append-limit-value] > capability /= appendlimit-cap > > appendlimit-respcode = "APPENDLIMIT" SP append-limit-value > resp-text-code /= appendlimit-respcode > > append-limit-value = 1*DIGIT > ; Unsigned 64-bit integer > ; (0 <= n < 18,446,744,073,709,551,615) After thinking more about this, I think we should revert to 32 bit limits, because if a message is >= 2**32 octets, FETCH RFC822.SIZE would be unable to return the message size, so other things would break. So I think we should have a separate extension that takes care of 64bit message/body part sizes. Best Regards, Alexey
- [imapext] Review of draft-ietf-imapapnd-appendlim… Alexey Melnikov
- Re: [imapext] Review of draft-ietf-imapapnd-appen… Jayantheesh S B
- Re: [imapext] Review of draft-ietf-imapapnd-appen… Jayantheesh S B
- Re: [imapext] Review of draft-ietf-imapapnd-appen… Jamie Nicolson
- Re: [imapext] Review of draft-ietf-imapapnd-appen… Alexey Melnikov