Re: [hybi] RFC6455 clarification: when received close code of 1005, 1006, 1015

Jason Duell <jduell.mcbugs@gmail.com> Wed, 23 May 2012 04:38 UTC

Return-Path: <jduell.mcbugs@gmail.com>
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 6CD8021F85FF for <hybi@ietfa.amsl.com>; Tue, 22 May 2012 21:38:44 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.227
X-Spam-Level:
X-Spam-Status: No, score=-3.227 tagged_above=-999 required=5 tests=[AWL=0.372, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xJS6q3D6QE+s for <hybi@ietfa.amsl.com>; Tue, 22 May 2012 21:38:43 -0700 (PDT)
Received: from mail-qc0-f172.google.com (mail-qc0-f172.google.com [209.85.216.172]) by ietfa.amsl.com (Postfix) with ESMTP id B4A2F21F85F4 for <hybi@ietf.org>; Tue, 22 May 2012 21:38:43 -0700 (PDT)
Received: by qcsq13 with SMTP id q13so5438321qcs.31 for <hybi@ietf.org>; Tue, 22 May 2012 21:38:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=/YkNzPWL5aLiL4aZAekEM05sY/GRaZsODEJI3GWca58=; b=PL/rb3SPku6h7vtMLSeRIpq65ePZ15CAh8mF+5SDYa41FxuctxpVJnzq27llRTiD7K jlOJ7SLO7V+y8poueD0oq/3yo0YcZz0MIF/rjws2U0aad2jBQDVDuq2fOJtN79eV/MYW cGaCdvhRQCkf31i768YSVNKC0vKhY2GMN3fhVNB5irbtGJQZfjJgGFJrw6bGNxjc5X7f aoNsCKjGWtKrrzPmFO0UAR3xJ8Zfwec02ZmKNVTK7eHQHlgQ2XRxI1gmwcrhOQosv9HF ZaBYqGwO1yPkInG/RURI+Y/s9uyVbEq7xJ2hEm6rkB+uegmn8IoI10hPgY6g5+rzGpn1 jKeQ==
Received: by 10.229.135.193 with SMTP id o1mr4615869qct.34.1337747922912; Tue, 22 May 2012 21:38:42 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.229.198.26 with HTTP; Tue, 22 May 2012 21:38:22 -0700 (PDT)
In-Reply-To: <CAFWCB1kuuMNSEmcgcHdMyOHRJyp=VKSm-YNceCPDZat3+1=zJw@mail.gmail.com>
References: <CAH9hSJbQ7dcu4N=Yf7TyFzJ0FhfVRehEMtnFx3Qvv_W0T5Cs+A@mail.gmail.com> <4FAACC40.6040308@isode.com> <CAH9hSJY5RPiAfwgBkbK08sY09dDkOO6JtCWqM2dYUko2ZV5MZw@mail.gmail.com> <CAFWCB1kuuMNSEmcgcHdMyOHRJyp=VKSm-YNceCPDZat3+1=zJw@mail.gmail.com>
From: Jason Duell <jduell.mcbugs@gmail.com>
Date: Tue, 22 May 2012 21:38:22 -0700
Message-ID: <CAM6mnz+fy2D_91UL=nnOmrL=4LOqrQ97CQW8DfFkQhHDHwn6FQ@mail.gmail.com>
To: Takashi Toyoshima <toyoshim@chromium.org>, hybi@ietf.org
Content-Type: text/plain; charset="ISO-8859-1"
Subject: Re: [hybi] RFC6455 clarification: when received close code of 1005, 1006, 1015
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.12
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: <http://www.ietf.org/mail-archive/web/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, 23 May 2012 04:38:44 -0000

On Mon, May 21, 2012 at 11:18 PM, Takashi Toyoshima
<toyoshim@chromium.org> wrote:
> I'll fix WebKit implementation of receiving 1005, 1006, 1015, and
> length=1 of close frames.
> These frames will fire CloseEvent with code=1006 and wasClean=false.

What, if anything, do you plan to reply to the endpoint with, if the
1005/1006/1015 is received before your client has sent its own close
frame?  Will you be replying with 1002, but delivering 1006 to
onclose?  I can see the logic there, though it's a little confusing.
The only other choice would seem to be to simply shut down the TCP
connection with no close frame, but that seems harsh.  Or we could
both send 1002 to the remote server and deliver it to onclose (though
I agree that 1006 seems closer in meaning).

Jason Duell
Mozilla

>> We can. But as Arman suggested, we can also just use the existing code 1002
>> to tell the remote endpoint that it's broken when the closing handshake
>> initiator is the remote endpoint.