Re: [hybi] [Technical Errata Reported] RFC6455 (5453)

Julian Reschke <julian.reschke@gmx.de> Wed, 08 August 2018 17:26 UTC

Return-Path: <julian.reschke@gmx.de>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0EE42126BED for <hybi@ietfa.amsl.com>; Wed, 8 Aug 2018 10:26:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-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 W50r8Qw1ahoZ for <hybi@ietfa.amsl.com>; Wed, 8 Aug 2018 10:26:53 -0700 (PDT)
Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0317E130EA3 for <hybi@ietf.org>; Wed, 8 Aug 2018 10:26:52 -0700 (PDT)
Received: from [192.168.178.20] ([93.217.82.86]) by mail.gmx.com (mrgmx101 [212.227.17.168]) with ESMTPSA (Nemesis) id 0LkTSx-1gJllh1t2x-00cTVN; Wed, 08 Aug 2018 19:26:18 +0200
To: Andy Green <andy@warmcat.com>, hybi@ietf.org, RFC Errata System <rfc-editor@rfc-editor.org>, ifette+ietf@google.com, Alexey.Melnikov@isode.com, ben@nostrum.com, aamelnikov@fastmail.fm, adam@nostrum.com, Salvatore.Loreto@ericsson.com, Gabriel.Montenegro@microsoft.com
References: <20180808134110.41FF7B80B0C@rfc-editor.org> <711770E5-8B23-4B32-BABE-3B0BE5EEFA31@warmcat.com>
From: Julian Reschke <julian.reschke@gmx.de>
Message-ID: <3f2f1925-e518-4b46-c97a-0404dd366163@gmx.de>
Date: Wed, 08 Aug 2018 19:26:13 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1
MIME-Version: 1.0
In-Reply-To: <711770E5-8B23-4B32-BABE-3B0BE5EEFA31@warmcat.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Provags-ID: V03:K1:r4dJgYnMa3oQMa32ftRTcBzHazVMTUnBTsbekMvvIRtUBXyd8Sr tVJoBXGzF1DY3or0gUD9iGNcUNh6yK+/FdO3aBzK+ITAsOe9VThBLymXBjsOoMAw2UJ8xWY EZUfNRnetX3zcE95Bf+7lUjSq1Qssjjprcr+xr7RBhqML0IjtCzwd/WENsI+cd0bfS9oE+Q 7LvvbyQoHGeouvebn961w==
X-UI-Out-Filterresults: notjunk:1;V01:K0:jsX+vRIRObs=:7OIkTDPHGOFkpFmzYHys35 BOcH/6rAA8PLhx02R0X4pPokQNmw//RHEuuqgVOQzdMb6gDeWdlu4ryP1rGNqICI3Utr9LI++ QnzEtET/giY6DmUcAG9ilkvAgDsJkQQsAimj8NCpNIVjslKuqViFRMYOoqm96bkAB/f+drzU4 +ceR2cjTfSjsngcml60M7F3Fy+cKp0ySME+y8qkmcZSUxkfhRRp4dqLrO4022h7b84DR0cNRd GvJiiznOJ9UWKGUIGf5LKg9t5vHlwDeVmDqGoo899fT1FQgUWDmGpVD8mHywvFy4Ab7SKIgPv +ttSap3Ez1JWRB3s/GNObGUo1N682NhXTDdgizreS72yyv2eHzJgVywxQjg/flKcutRivqCXh 0W/1IR4GwZC4aZpUE9mTeGHP1ycAL1188gVna6NPDNHcuYGQFwQ76CpD37/ZutLKsoLdGqtrb vUm08jcuz+EOSxsmrXUXwtqsRTC4rTIaMK9xv1108z8HzJjS0Rv3bt3VB6yH0BGmzY2VZLEe1 iJxW7r3x6Zc5ZfCVjU9UGTljcchHTJBSQcuGkg/L7v1ZJ/SS0q+A1WAYOzmc4079L/wc6vrkx qWyfOBe9LdJwKQckcrtbL5yZp+43y2YRsN4F5pxf87i3Wg3mjKTgjEw7i6AwL8NUGgCXH8j4m vX6adPgiWUPM+xEeAJv73lb0Bn1zznQjHpnrwHa5u6zwYRZp7eL4EtvLnmWfsw2G9Mma5Iovn egbPHxuoZR+2JYkp19bSI7clllyhm+bETYMXmUxwt2yMQAmo9WUMw2GKfrkEYMMjU1KECzIK8 b2jMZG3
Archived-At: <https://mailarchive.ietf.org/arch/msg/hybi/3jHV2Re2xNXVCTEntYP9Hz8eSag>
X-Mailman-Approved-At: Wed, 08 Aug 2018 20:36:31 -0700
Subject: Re: [hybi] [Technical Errata Reported] RFC6455 (5453)
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/hybi/>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 08 Aug 2018 17:26:57 -0000

On 2018-08-08 18:49, Andy Green wrote:
> 
> 
> On August 8, 2018 9:41:10 PM GMT+08:00, RFC Errata System <rfc-editor@rfc-editor.org> wrote:
>> The following errata report has been submitted for RFC6455,
>> "The WebSocket Protocol".
>>
>> --------------------------------------
>> You may review the report below and at:
>> http://www.rfc-editor.org/errata/eid5453
>>
>> --------------------------------------
>> Type: Technical
>> Reported by: Julian Reschke <julian.reschke@gmx.de>
>>
>> Section: 4.1
>>
>> Original Text
>> -------------
>>    2.  If the response lacks an |Upgrade| header field or the |Upgrade|
>>        header field contains a value that is not an ASCII case-
>>        insensitive match for the value "websocket", the client MUST
>>        _Fail the WebSocket Connection_.
>>
>> Corrected Text
>> --------------
>>    2.  If the response lacks an |Upgrade| header field or the |Upgrade|
>>        header field contains a value that does not match "WebSocket",
>>        the client MUST _Fail the WebSocket Connection_.
>>
>> Notes
>> -----
>> HTTP upgrade tokens are case-sensitive, and the token registered by RFC
>> 6455 is "WebSocket" (see
>> <https://www.iana.org/assignments/http-upgrade-tokens/http-upgrade-tokens.xhtml>).
>> Examples should be adjusted accordingly.
> 
> I didn't see where registry entries are defined to be case sensitive.  RFC7230 8.6.1 doesn't seem to tell it either.
> ...

It's defined to be a token, and that matches case-sensitively. See also 
<https://github.com/httpwg/http-core/issues/8>.

> Since this is a 'technical issue' in the sense the conflict is between RFC6455 text and the house rules of the registry, it can also be solved by the registry adding a note the "WebSockets" entry covers all case variations, can't it?  It's not like with the 5 or whatever entries in the registry to date, anyone was about to register 'weBsocKets'.  Or the registry can clearly state that all entries cover all case variations...
> ...

As this is "first come first serve", there really is no review process 
we can rely on...

In any case, it probably would be wise to register "websockets" as well, 
so that at least the examples become compliant.

Best regards, Julian