Re: [Technical Errata Reported] RFC7230 (4189)

"Roy T. Fielding" <fielding@gbiv.com> Fri, 06 February 2015 22:36 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ietf.org@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 438731A1B22 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 6 Feb 2015 14:36:36 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.712
X-Spam-Level:
X-Spam-Status: No, score=-4.712 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, MANGLED_MEN=2.3, RCVD_IN_DNSWL_HI=-5, SPF_HELO_PASS=-0.001, 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 1nXViE4khsKk for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 6 Feb 2015 14:36:33 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 029B11A8755 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Fri, 6 Feb 2015 14:36:29 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1YJrSM-0005HP-4n for ietf-http-wg-dist@listhub.w3.org; Fri, 06 Feb 2015 22:32:58 +0000
Resent-Date: Fri, 06 Feb 2015 22:32:58 +0000
Resent-Message-Id: <E1YJrSM-0005HP-4n@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.80) (envelope-from <fielding@gbiv.com>) id 1YJrSG-0005GY-1c for ietf-http-wg@listhub.w3.org; Fri, 06 Feb 2015 22:32:52 +0000
Received: from sub4.mail.dreamhost.com ([69.163.253.135] helo=homiemail-a49.g.dreamhost.com) by lisa.w3.org with esmtp (Exim 4.72) (envelope-from <fielding@gbiv.com>) id 1YJrSE-0007OM-Cz for ietf-http-wg@w3.org; Fri, 06 Feb 2015 22:32:52 +0000
Received: from homiemail-a49.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a49.g.dreamhost.com (Postfix) with ESMTP id 6650F200D3088; Fri, 6 Feb 2015 14:32:28 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gbiv.com; h=subject :mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; s=gbiv.com; bh=3bIaR4Gc4ZKNL8pV7aeT83/QUWo=; b=t2zm0+zU36rw0iI+Y5jjrwbOqPlR ZlDHlcAj9K4ToHJEB495PWWvxrir8mCkh3Aj4OLMV/NF8JPaKwA21Y8fyy5anYk9 xV2DYQu2KeBrvE1IDQWBLFOTWWsZ6BQVGWBq3IdeLsJAomXysEl6jOIvgGI9W8Lh 2/btrq/U6jUJlUg=
Received: from [192.168.1.12] (ip68-228-83-124.oc.oc.cox.net [68.228.83.124]) (using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: fielding@gbiv.com) by homiemail-a49.g.dreamhost.com (Postfix) with ESMTPSA id 2B2C0200D3087; Fri, 6 Feb 2015 14:32:28 -0800 (PST)
Mime-Version: 1.0 (Apple Message framework v1283)
Content-Type: text/plain; charset="iso-8859-1"
From: "Roy T. Fielding" <fielding@gbiv.com>
In-Reply-To: <CALaySJJh-9w2mnT9fV9dxaOJ_Tq=ipvV7nbNbEqY+g_6ppJjTg@mail.gmail.com>
Date: Fri, 06 Feb 2015 14:32:30 -0800
Cc: Julian Reschke <julian.reschke@greenbytes.de>, RFC Errata System <rfc-editor@rfc-editor.org>, Pete Resnick <presnick@qti.qualcomm.com>, Mark Nottingham <mnot@mnot.net>, simon.schueppel@googlemail.com, HTTP Working Group <ietf-http-wg@w3.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <723A86CD-6369-4A8A-B277-CBDA4439DCE9@gbiv.com>
References: <20141126195639.B3D5C181CE7@rfc-editor.org> <5476D0BC.70905@greenbytes.de> <CALaySJJh-9w2mnT9fV9dxaOJ_Tq=ipvV7nbNbEqY+g_6ppJjTg@mail.gmail.com>
To: Barry Leiba <barryleiba@computer.org>
X-Mailer: Apple Mail (2.1283)
Received-SPF: none client-ip=69.163.253.135; envelope-from=fielding@gbiv.com; helo=homiemail-a49.g.dreamhost.com
X-W3C-Hub-Spam-Status: No, score=-3.4
X-W3C-Hub-Spam-Report: AWL=-3.295, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, URIBL_BLOCKED=0.001
X-W3C-Scan-Sig: lisa.w3.org 1YJrSE-0007OM-Cz f838a719d15ae60ee0fdbadb2bfff865
X-Original-To: ietf-http-wg@w3.org
Subject: Re: [Technical Errata Reported] RFC7230 (4189)
Archived-At: <http://www.w3.org/mid/723A86CD-6369-4A8A-B277-CBDA4439DCE9@gbiv.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/28774
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Feb 6, 2015, at 6:28 AM, Barry Leiba wrote:
> On Thu, Nov 27, 2014 at 2:20 AM, Julian Reschke <julian.reschke@greenbytes.de> wrote:
>> On 2014-11-26 20:56, RFC Errata System wrote:
>>> 
>>> The following errata report has been submitted for RFC7230,
>>> "Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing".
>>> 
>>> --------------------------------------
>>> You may review the report below and at:
>>> http://www.rfc-editor.org/errata_search.php?rfc=7230&eid=4189
>>> 
>>> --------------------------------------
>>> Type: Technical
>>> Reported by: Simon Schueppel <simon.schueppel@googlemail.com>
>>> 
>>> Section: 3.2
>>> 
>>> Original Text
>>> -------------
>>>      header-field   = field-name ":" OWS field-value OWS
>>> 
>>>      field-name     = token
>>>      field-value    = *( field-content / obs-fold )
>>>      field-content  = field-vchar [ 1*( SP / HTAB ) field-vchar ]
>>>      field-vchar    = VCHAR / obs-text
>>> 
>>>      obs-fold       = CRLF 1*( SP / HTAB )
>>>                     ; obsolete line folding
>>>                     ; see Section 3.2.4
>>> 
>>> Corrected Text
>>> --------------
>>>     header-field   = field-name ":" FWS field-value FWS
>>> 
>>>     field-name     = token
>>>     FWS            = field-ows
>>>     field-value    = [ field-vchar *( field-ows field-vchar ) ]
>>>     field-vchar    = VCHAR / obs-text
>>>     field-ows      = *( SP / HTAB ) *obs-fold
>>> 
>>>     obs-fold       = CRLF 1*( SP / HTAB )
>>>                     ; obsolete line folding
>>>                     ; see Section 3.2.4
>>> 
>>> Notes
>>> -----
>>> the field-value rule given in Section 3.2 will not recognize several
>>> strings recognized by specific header rules.
>>> 
>>> Examples:
>>>     - ", , ," recognized by legacy list rule
>>>     - "abrowser/0.001 (C O M M E N T)" recognized by User-Agent rule
>>>     - "gzip , chunked" recognized by Transfer-Encoding rule
>>>     - etc.
>>> 
>>> General Problem:
>>>     the specified field-value rule does not allow single field-vchar
>>> surrounded by whitespace anywhere
>>> 
>>> Further Notes:
>>>     -what the authors propably wanted to say:
>>>         a string of octets is a field-value if, and only if:
>>>             -it is *( field-vchar / SP / HTAB / obs-fold )
>>>             -if it is not empty, it starts and ends with field-vchar
>>> 
>>>     -the suggested correction was designed according to these criteria
>>> 
>>> Instructions:
>>> -------------
>>> This erratum is currently posted as "Reported". If necessary, please
>>> use "Reply All" to discuss whether it should be verified or
>>> rejected. When a decision is reached, the verifying party (IESG)
>>> can log in to change the status and edit the report, if necessary.
>>> 
>>> --------------------------------------
>>> RFC7230 (draft-ietf-httpbis-p1-messaging-26)
>>> --------------------------------------
>>> Title               : Hypertext Transfer Protocol (HTTP/1.1): Message
>>> Syntax and Routing
>>> Publication Date    : June 2014
>>> Author(s)           : R. Fielding, Ed., J. Reschke, Ed.
>>> Category            : PROPOSED STANDARD
>>> Source              : Hypertext Transfer Protocol Bis
>>> Area                : Applications
>>> Stream              : IETF
>>> Verifying Party     : IESG

>> Hi there,
>> 
>> I agree that there is indeed a problem ("the specified field-value rule does
>> not allow single field-vchar surrounded by whitespace anywhere.
>> 
>> I'm however not sure that the proposed fix is what we want. In particular,
>> it's not clear why we need to modify the header-field production at all.
>> 
>> Best regards, Julian
>> 

> I should do something with this errata report; can you give me more
> input?  If it's indeed a problem, can the report be edited
> appropriately and marked "Verified"?  If so, please tell me what the
> edit should be.  If not, give me some explanation that I can put in
> for marking it "Held for Document Update".
> 
> Barry

I looked at this originally and thought it made sense, but figured
I would have to check carefully first before responding ... and
then lost it.

It should be verified as technical, but (like Julian) I think the
fix should be limited to field-content and obs-fold:

Section: 3.2

Original Text
-------------
     field-name     = token
     field-value    = *( field-content / obs-fold )
     field-content  = field-vchar [ 1*( SP / HTAB ) field-vchar ]
     field-vchar    = VCHAR / obs-text

     obs-fold       = CRLF 1*( SP / HTAB )
                    ; obsolete line folding
                    ; see Section 3.2.4

Corrected Text
--------------
     field-name     = token
     field-value    = *( field-content / obs-fold )
     field-content  = field-vchar [ 1*( SP / HTAB / field-vchar ) field-vchar ]
     field-vchar    = VCHAR / obs-text

     obs-fold       = OWS CRLF RWS
                    ; obsolete line folding
                    ; see Section 3.2.4

This fixes the problem examples and keeps obs-fold separate from field-content.
It would be best if some other folks could confirm the above before making
the errata official.

....Roy