Re: Multiple header fields with the same field name - unwritten assumption about quoted commas in values?

Nico Williams <nico@cryptonector.com> Tue, 15 January 2013 23:59 UTC

Return-Path: <ietf-http-wg-request@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 (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0F6871F0CE4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 15 Jan 2013 15:59:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.977
X-Spam-Level:
X-Spam-Status: No, score=-9.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UvEbj-rVbCwp for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 15 Jan 2013 15:59:18 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 824991F0CF6 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 15 Jan 2013 15:59:18 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1TvGOb-00049j-Vm for ietf-http-wg-dist@listhub.w3.org; Tue, 15 Jan 2013 23:58:22 +0000
Resent-Date: Tue, 15 Jan 2013 23:58:21 +0000
Resent-Message-Id: <E1TvGOb-00049j-Vm@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <nico@cryptonector.com>) id 1TvGOZ-00048v-8I for ietf-http-wg@listhub.w3.org; Tue, 15 Jan 2013 23:58:19 +0000
Received: from caiajhbdcbhh.dreamhost.com ([208.97.132.177] helo=homiemail-a65.g.dreamhost.com) by maggie.w3.org with esmtp (Exim 4.72) (envelope-from <nico@cryptonector.com>) id 1TvGOY-0004tm-D5 for ietf-http-wg@w3.org; Tue, 15 Jan 2013 23:58:19 +0000
Received: from homiemail-a65.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a65.g.dreamhost.com (Postfix) with ESMTP id C55A67E4065 for <ietf-http-wg@w3.org>; Tue, 15 Jan 2013 15:57:57 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type; s=cryptonector.com; bh=SbiRsAho34WYrgwHvR9s Kqi/Soo=; b=RHkxC8hVQhYsmXTusJ7lpJs6mlK9k1RS6qqDdt0La94I0fWosACC iN+st9QwqlfSmSdpD1zavwn41KDw/Nbk2CtDyQV0AWVp3k/3KgUB9E0HEdAt6FSV W0uTRUZeIE0tbbUdyNaLnNrSIYbs2tq6r1HW3DUc/9y19BvNzq2Mdbw=
Received: from mail-wi0-f170.google.com (mail-wi0-f170.google.com [209.85.212.170]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a65.g.dreamhost.com (Postfix) with ESMTPSA id 770057E4056 for <ietf-http-wg@w3.org>; Tue, 15 Jan 2013 15:57:57 -0800 (PST)
Received: by mail-wi0-f170.google.com with SMTP id hq7so2991203wib.5 for <ietf-http-wg@w3.org>; Tue, 15 Jan 2013 15:57:56 -0800 (PST)
MIME-Version: 1.0
X-Received: by 10.180.33.44 with SMTP id o12mr6651147wii.28.1358294276044; Tue, 15 Jan 2013 15:57:56 -0800 (PST)
Received: by 10.217.82.73 with HTTP; Tue, 15 Jan 2013 15:57:55 -0800 (PST)
In-Reply-To: <86DE887E-B189-40D2-A867-C81CFB0434AB@mnot.net>
References: <CAA6tFMtOtpu-KJ1PMctU-XqZBXieOgb=uxPNj9wkRBvvbK7iXg@mail.gmail.com> <CACuKZqFWzApgkbQUEgOoNrumJFKSeVFZeCzZgvWDBGukykVqiA@mail.gmail.com> <50ED4DB4.5010803@gmx.de> <CACuKZqHDWbNMiwjkxvBuAt-UEg_tjzEvFZsyXM2U+5H5qxK76A@mail.gmail.com> <50ED9CEF.8080609@gmx.de> <CACuKZqFQ1=0sU7uhnh9_xew5=jPjS3WtEgrtu1RFH+Nu_=FwrQ@mail.gmail.com> <50EDA819.4040402@gmx.de> <CACuKZqH4+JUe4Gqp7LRGkCorFdQ107S=sf2uOSZnMkdgHmJaaQ@mail.gmail.com> <50EDD95C.9080206@gmx.de> <CAA6tFMsgAKL+-UW6rS0ScxpvukBhJ2ExT9KMWudiKa65YCpkew@mail.gmail.com> <50F549D8.2050501@gmx.de> <360A0ACE-4CA6-400A-BFE9-7DFF89AAB439@opera.com> <50F57628.5030502@gmx.de> <BD31B7FE-1CB4-48AD-A119-37A3509EF8E9@opera.com> <6D9EA8FA-50A6-44B1-A2EF-BB428E94183C@mnot.net> <CAK3OfOj8G3gFbTK_vPSnjS0qij+SUB3t9CdG80FYW5tbGgKR3A@mail.gmail.com> <C6A43E78-4F94-4FE3-A049-678555896FEC@mnot.net> <CAK3OfOiS1UPqvsk5H8RWUKyw8MB=uykeMkXzZoffm6732=UjMg@mail.gmail.com> <86DE887E-B189-40D2-A867-C81CFB0434AB@mnot.net>
Date: Tue, 15 Jan 2013 17:57:55 -0600
Message-ID: <CAK3OfOiWzJqHr8VSzn6WFcWRGJEr59XiUyh+wGTDnf1ydVL=3g@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: Mark Nottingham <mnot@mnot.net>
Cc: Karl Dubost <karld@opera.com>, Julian Reschke <julian.reschke@gmx.de>, Piotr Dobrogost <p@ietf.dobrogost.net>, ietf-http-wg@w3.org
Content-Type: text/plain; charset="UTF-8"
Received-SPF: none client-ip=208.97.132.177; envelope-from=nico@cryptonector.com; helo=homiemail-a65.g.dreamhost.com
X-W3C-Hub-Spam-Status: No, score=-3.5
X-W3C-Hub-Spam-Report: AWL=-3.425, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001
X-W3C-Scan-Sig: maggie.w3.org 1TvGOY-0004tm-D5 72db249a709912cc71181d543fb08249
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Multiple header fields with the same field name - unwritten assumption about quoted commas in values?
Archived-At: <http://www.w3.org/mid/CAK3OfOiWzJqHr8VSzn6WFcWRGJEr59XiUyh+wGTDnf1ydVL=3g@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/15894
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 Tue, Jan 15, 2013 at 5:47 PM, Mark Nottingham <mnot@mnot.net> wrote:
> On 16/01/2013, at 10:37 AM, Nico Williams <nico@cryptonector.com> wrote:
>
>> On Tue, Jan 15, 2013 at 5:28 PM, Mark Nottingham <mnot@mnot.net> wrote:
>>> We're talking about HTTP/1.x here, not 2.0. We can't retroactively make implementations non-conformant.
>>
>> Ah, yes.  But we could stop encouraging implementors to merge multiple
>> header instances.  Then we only have to say that it happens and
>> explain the pitfalls.
>
> It's extremely common to do something like:
>
> Cache-Control: max-age=60, must-revalidate
>
> Are you really saying that this should be discouraged?

No.  I'm saying that it's OK for apps to do that but not any other
entities (middleboxes), mostly because middleboxes can't possibly know
about headers that hadn't been registered when they were implemented.

Nico
--