[Extra] AD review of draft-ietf-extra-imap-fetch-preview-00

Alexey Melnikov <alexey.melnikov@isode.com> Mon, 14 January 2019 11:59 UTC

Return-Path: <alexey.melnikov@isode.com>
X-Original-To: extra@ietfa.amsl.com
Delivered-To: extra@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CF75D131059 for <extra@ietfa.amsl.com>; Mon, 14 Jan 2019 03:59:53 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 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] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=isode.com
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 70uzHZNBpmX1 for <extra@ietfa.amsl.com>; Mon, 14 Jan 2019 03:59:52 -0800 (PST)
Received: from waldorf.isode.com (waldorf.isode.com [62.232.206.188]) by ietfa.amsl.com (Postfix) with ESMTP id 1420D13104B for <extra@ietf.org>; Mon, 14 Jan 2019 03:59:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1547467174; d=isode.com; s=june2016; i=@isode.com; bh=BC0jEn65JHbkKAlQTfU61lEeMS3E6jJNmW8azD2QLew=; 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=qR36hyrjaMqwf3TYz5Uvqo88ssrlPCStGJ0AP/RYEUAfGVapudmOdvBGqQCu6wZ2D2X3/9 jHjYRpXFBQjU8VjLdrEPJLjS7I9eKaT+SDTFzLEGM2RtfvZnVQnONDAnuWQ4tm7C4z1NYB /d3I5GnkUqrP6uelSd8zYCRnscy3v8o=;
Received: from [192.168.0.7] (cpc121086-nmal24-2-0-cust54.19-2.cable.virginm.net [77.97.145.55]) by waldorf.isode.com (submission channel) via TCP with ESMTPSA id <XDx5pQAYWllu@waldorf.isode.com>; Mon, 14 Jan 2019 11:59:33 +0000
To: extra@ietf.org, Michael Slusarz <michael.slusarz@open-xchange.com>
From: Alexey Melnikov <alexey.melnikov@isode.com>
Openpgp: preference=signencrypt
Message-ID: <8c0e5e45-5646-f609-354a-077594228b9d@isode.com>
Date: Mon, 14 Jan 2019 11:59:23 +0000
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.3.0
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-transfer-encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/extra/iR_RxFBmCsiZmjkZo_F9zfYUQHQ>
Subject: [Extra] AD review of draft-ietf-extra-imap-fetch-preview-00
X-BeenThere: extra@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Email mailstore and eXtensions To Revise or Amend <extra.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/extra>, <mailto:extra-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/extra/>
List-Post: <mailto:extra@ietf.org>
List-Help: <mailto:extra-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/extra>, <mailto:extra-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 14 Jan 2019 11:59:54 -0000

Hi,

This document is nearly ready for IETF LC and IESG review, but I have a
few comments that require a bit of work to address:

In Section 1:

   A server that supports the PREVIEW extension indicates this with one
   or more capability names consisting of "PREVIEW=" followed by a
   supported preview algorithm name.  This format provides for future
   upwards-compatible extensions and/or the ability to use locally-
   defined preview algorithms.

This is not reflected in the ABNF section (Section 7). See my comment on
section 7 below.


In Section 3.2:

   The algorithm used by the server to generate the preview is returned
   preceding the preview string.

   The server returns a variable-length string that is the generated
   preview for that message.

Having an example at this point would make it easier for reader to
understand the document.

In Section 4.1:

   If the FUZZY algorithm generates a preview that is not based on the
   body content of the message and the LANGUAGE [RFC5255] extension is

Is preview is not based on the body content, what is it based on?
Do you mean header fields from the message?

   supported by the server, the preview text SHOULD be generated
   according to the the language rules that apply to human-readable
   text.

In Section 5.1:

How would the client know when to try to retrieve LAZY preview again?

In Section 7:

   The following syntax specification uses the augmented Backus-Naur
   Form (BNF) as described in ABNF [RFC5234].  It includes definitions
   from IMAP [RFC3501].

     capability        =/ "PREVIEW=FUZZY"

This doesn't quite much what you specify in Section 1.
Maybe change it to:

        capability        =/ "PREVIEW=" preview-alg
?


     fetch-att         =/ "PREVIEW" [SP "(" preview-alg-fetch *(SP
                          preview-alg-fetch) ")"]

     msg-att-dynamic   =/ "PREVIEW" SP "(" preview-alg SP nstring ")"

     preview-alg       =  "FUZZY" / preview-alg-ext

     preview-alg-ext   =  preview-atom  ; New algorithms MUST be
                                        ; registered with IANA

And you don't define the procedure for registering these in the IANA
Considerations section.

     preview-mod-ext   =  preview-atom  ; New priority modifiers MUST be
                                        ; registered with IANA

As above: this needs to have the corresponding IANA Considerations text.


In Section 10:

   There are no known additional security issues with this extension
   beyond those described in the base protocol described in IMAP4
   [RFC3501].

I am not entirely convinced that this is true. This extension either
requires more disk storage or more computation on the server. Both can
cause some form of Denial-of-Service.
(And disk storage space might be worth calling out as a separate
operational consideration)

Best Regards,
Alexey