[usefor] Issue with ABNF grammar in RFC 5536

Julien ÉLIE <julien@trigofacile.com> Mon, 03 July 2017 20:23 UTC

Return-Path: <julien@trigofacile.com>
X-Original-To: usefor@ietfa.amsl.com
Delivered-To: usefor@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AC2AD13179F for <usefor@ietfa.amsl.com>; Mon, 3 Jul 2017 13:23:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.42
X-Spam-Level:
X-Spam-Status: No, score=-3.42 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, RCVD_IN_SORBS_SPAM=0.5, SPF_NEUTRAL=0.779, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 g7KY4E6yyY9j for <usefor@ietfa.amsl.com>; Mon, 3 Jul 2017 13:23:50 -0700 (PDT)
Received: from smtp.smtpout.orange.fr (smtp08.smtpout.orange.fr [80.12.242.130]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 54A84131799 for <usefor@ietf.org>; Mon, 3 Jul 2017 13:23:49 -0700 (PDT)
Received: from mbpdejulienelie.home ([86.252.120.177]) by mwinf5d68 with ME id gLPm1v0033pkiFq03LPmUk; Mon, 03 Jul 2017 22:23:47 +0200
X-ME-Helo: mbpdejulienelie.home
X-ME-Auth: anVsaWVuLmVsaWU0ODdAd2FuYWRvby5mcg==
X-ME-Date: Mon, 03 Jul 2017 22:23:47 +0200
X-ME-IP: 86.252.120.177
To: usefor@ietf.org
From: Julien ÉLIE <julien@trigofacile.com>
Organization: TrigoFACILE -- http://www.trigofacile.com/
Cc: pkyzivat@alum.mit.edu
Message-ID: <15001f4b-477e-1900-6d3b-d0635b9dad94@trigofacile.com>
Date: Mon, 03 Jul 2017 22:23:45 +0200
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: fr
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/usefor/7CetanT6CJn-TbeS6S_iG8QZRdI>
Subject: [usefor] Issue with ABNF grammar in RFC 5536
X-BeenThere: usefor@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "Ongoing discussion of usefor issues." <usefor.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/usefor>, <mailto:usefor-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/usefor/>
List-Post: <mailto:usefor@ietf.org>
List-Help: <mailto:usefor-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/usefor>, <mailto:usefor-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Jul 2017 20:23:52 -0000

Hi all,

Paul Kyzivat noticed in the IETF Gen-ART mailing-list
   https://www.ietf.org/mail-archive/web/gen-art/current/msg14921.html
that there is an issue in the ABNF of RFC 5536 (USEFOR).

RFC 5536 defines the following extension:

    fields          =/ *( approved /
                          archive /
                          control /
                          distribution /
                          expires /
                          followup-to /
                          injection-date /
                          injection-info /
                          lines /
                          newsgroups /
                          organization /
                          path /
                          summary /
                          supersedes /
                          user-agent /
                          xref )

to the following element in RFC 5322:

    fields          =   *(trace
                          *optional-field /
                          *(resent-date /
                           resent-from /
                           resent-sender /
                           resent-to /
                           resent-cc /
                           resent-bcc /
                           resent-msg-id))
                        *(orig-date /
                        from /
                        sender /
                        reply-to /
                        to /
                        cc /
                        bcc /
                        message-id /
                        in-reply-to /
                        references /
                        subject /
                        comments /
                        keywords /
                        optional-field)

and a message is defined this way:

    message         =   (fields / obs-fields)
                        [CRLF body]



It appears that the extension done in RFC 5536 is wrong because of how 
"fields" is constructed in RFC 5322; as a matter of fact, (*a *b) in RFC 
5322 is extended to (*a *b) / *c in RFC 5536 whereas (*a *b *c) was wanted.

I believe an erratum should be filled to RFC 5536.  Maybe by just 
changing the wording in Section 3:

    The following news header fields extend those defined in Section 3.6
    of [RFC5322]:

      fields        =/ *( approved /
                          archive /
                          control /
                          distribution /
                          expires /
                          followup-to /
                          injection-date /
                          injection-info /
                          lines /
                          newsgroups /
                          organization /
                          path /
                          summary /
                          supersedes /
                          user-agent /
                          xref )

to:

    The following news header fields are defined by this document:

      news-fields    =    approved /
                          archive /
                          control /
                          distribution /
                          expires /
                          followup-to /
                          injection-date /
                          injection-info /
                          lines /
                          newsgroups /
                          organization /
                          path /
                          summary /
                          supersedes /
                          user-agent /
                          xref

    The definition of message in Section 3.5 of [RFC5322] is changed to:

      message       =   *(fields / obs-fields / news-fields)
                        [CRLF body]



Any better idea of fix in RFC 5536?

-- 
Julien ÉLIE

« You know what I did before I married?  Anything I wanted to. »