Re: repeated filename parameters, Re: Working Group Last Call: draft-ietf-httpbis-content-disp-02

Adam Barth <w3c@adambarth.com> Sat, 02 October 2010 22:11 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@core3.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3C4E93A6D2C for <ietfarch-httpbisa-archive-bis2Juki@core3.amsl.com>; Sat, 2 Oct 2010 15:11:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.85
X-Spam-Level:
X-Spam-Status: No, score=-9.85 tagged_above=-999 required=5 tests=[AWL=0.127, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lwsBrofOrk3H for <ietfarch-httpbisa-archive-bis2Juki@core3.amsl.com>; Sat, 2 Oct 2010 15:11:42 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by core3.amsl.com (Postfix) with ESMTP id 4F80E3A6C73 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sat, 2 Oct 2010 15:11:42 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.69) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1P2AJK-0004gW-Gt for ietf-http-wg-dist@listhub.w3.org; Sat, 02 Oct 2010 22:12:06 +0000
Received: from bart.w3.org ([128.30.52.63]) by frink.w3.org with esmtp (Exim 4.69) (envelope-from <w3c@adambarth.com>) id 1P2AJ8-0004fG-HP for ietf-http-wg@listhub.w3.org; Sat, 02 Oct 2010 22:11:54 +0000
Received: from mail-iw0-f171.google.com ([209.85.214.171]) by bart.w3.org with esmtp (Exim 4.69) (envelope-from <w3c@adambarth.com>) id 1P2AJ6-0007Ar-Ut for ietf-http-wg@w3.org; Sat, 02 Oct 2010 22:11:54 +0000
Received: by iwn42 with SMTP id 42so6751603iwn.2 for <ietf-http-wg@w3.org>; Sat, 02 Oct 2010 15:11:27 -0700 (PDT)
Received: by 10.231.190.203 with SMTP id dj11mr7669486ibb.93.1286056160325; Sat, 02 Oct 2010 14:49:20 -0700 (PDT)
Received: from mail-iw0-f171.google.com (mail-iw0-f171.google.com [209.85.214.171]) by mx.google.com with ESMTPS id n20sm2875301ibe.5.2010.10.02.14.49.19 (version=SSLv3 cipher=RC4-MD5); Sat, 02 Oct 2010 14:49:19 -0700 (PDT)
Received: by iwn42 with SMTP id 42so6733629iwn.2 for <ietf-http-wg@w3.org>; Sat, 02 Oct 2010 14:49:18 -0700 (PDT)
Received: by 10.231.182.5 with SMTP id ca5mr7786830ibb.68.1286056151043; Sat, 02 Oct 2010 14:49:11 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.231.149.20 with HTTP; Sat, 2 Oct 2010 14:48:40 -0700 (PDT)
In-Reply-To: <4CA778D7.1070507@gmx.de>
References: <7F63487A-2D36-4260-A9D0-EF42EB48B006@mnot.net> <AANLkTimXzu7tg1FuMvYSMXSBf_1e5LjunKSD+F52RMqS@mail.gmail.com> <4CA778D7.1070507@gmx.de>
From: Adam Barth <w3c@adambarth.com>
Date: Sat, 02 Oct 2010 14:48:40 -0700
Message-ID: <AANLkTimO2gmbYqDJfR6wkEpYr_y4AS3C9zkvJG+EvVbp@mail.gmail.com>
To: Julian Reschke <julian.reschke@gmx.de>
Cc: Mark Nottingham <mnot@mnot.net>, HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Received-SPF: none
X-SPF-Guess: neutral
X-W3C-Hub-Spam-Status: No, score=-2.6
X-W3C-Hub-Spam-Report: BAYES_00=-2.599
X-W3C-Scan-Sig: bart.w3.org 1P2AJ6-0007Ar-Ut ecf07b81b53045658558c07d308b3a97
X-Original-To: ietf-http-wg@w3.org
Subject: Re: repeated filename parameters, Re: Working Group Last Call: draft-ietf-httpbis-content-disp-02
Archived-At: <http://www.w3.org/mid/AANLkTimO2gmbYqDJfR6wkEpYr_y4AS3C9zkvJG+EvVbp@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/9307
X-Loop: ietf-http-wg@w3.org
Sender: ietf-http-wg-request@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-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>
Resent-Message-Id: <E1P2AJK-0004gW-Gt@frink.w3.org>
Resent-Date: Sat, 02 Oct 2010 22:12:06 +0000

On Sat, Oct 2, 2010 at 11:24 AM, Julian Reschke <julian.reschke@gmx.de> wrote:
> On 02.10.2010 18:16, Adam Barth wrote:
>>
>> This document appears to be insufficiently precise for user agents to
>> implement Content-Disposition.  In particular, it does not
>> disambiguate what filename a user agent should use if multiple
>> filename attributes are present....
>
> Repeating a parameter makes the header instance invalid, this should be
> pointed out; I opened
> <http://trac.tools.ietf.org/wg/httpbis/trac/ticket/244> to track this (and
> also added a test case at
> <http://greenbytes.de/tech/tc2231/#attwith2filenames>).

There seems to be a lot of things generated by the grammar that are
nonsensical.  Perhaps it would useful to explain which of those things
servers ought to actually generate.

>> ... The grammar will fail to parse a
>> large number of Content-Disposition headers user agents receive on the
>> public Internet, etc....
>
> That's not a problem. There are no specific requirements on handling
> malformed headers, just like with any other HTTP header field, unless it
> affects security.

We disagree about whether that's a problem.  We do agree that those
requirements are not contained in this document.

>> ...  The document says:
>>
>> [[
>>    Based on interoperability
>>    testing with existing User Agents, it fully defines a profile of the
>>    features defined in the Multipurpose Internet Mail Extensions (MIME)
>>    variant ([RFC2183]) of the header field
>> ]]
>>
>> We should either add enough detail to the document to allow for user
>> agent implementations or clarify that this document is intended to
>> apply only to servers.  For example, we could change the above
>> paragraph to the following:
>>
>> [[
>>    Based on interoperability testing with existing User Agents, it
>> defines a profile
>>    for use by HTTP servers of the
>>    features defined in the Multipurpose Internet Mail Extensions (MIME)
>>    variant ([RFC2183]) of the header field
>> ]]
>> ...
>
> I don't understand the distinction between user agent and server here.

This document describes a profile for generating the
Content-Disposition header.  The server is the one who generates the
header.  Therefore, this document defines a profile for use by
servers.

> We are defining a response header field. The producer sets it, expressing
> additional instructions on how to handle the payload. The recipient can
> follow it or ignore it. For instance, a UA on a mobile phone without
> filesystem will likely ignore the "attachment" disposition.

Indeed.  However, this document does not contain the rules for
consuming the header in sufficient detail for me to implement a user
agent.  I need to look at another document for that information.
Sadly, that document doesn't yet exist.

> For invalid header field instances, there aren't any specific requirements.
> Do you have any evidence these are required?

Such information is required to achieve interoperable implementations
of the Content-Disposition header.  It's fine if you don't want to
include that information in this document.  The document should just
be clear about its scope.

Adam