Re: [quicwg/base-drafts] Define three QPACK error types, refine error handling. (#1726)

Bence Béky <notifications@github.com> Thu, 06 September 2018 17:59 UTC

Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D4EE8130E98 for <quic-issues@ietfa.amsl.com>; Thu, 6 Sep 2018 10:59:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.03
X-Spam-Level:
X-Spam-Status: No, score=-7.03 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FROM_EXCESS_BASE64=0.979, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com
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 Y2aZArWO0nBK for <quic-issues@ietfa.amsl.com>; Thu, 6 Sep 2018 10:59:46 -0700 (PDT)
Received: from out-2.smtp.github.com (out-2.smtp.github.com [192.30.252.193]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DABB3130DC3 for <quic-issues@ietf.org>; Thu, 6 Sep 2018 10:59:45 -0700 (PDT)
Date: Thu, 06 Sep 2018 10:59:44 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1536256785; bh=auTWgstb+mnNSGyz/8BYz5KHvjItQhsrsIU0+MCYE94=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=CriaSfpopyqaP4Iel3NidVyKAlwx4EF5P0HTqNPvBzzlrljiHf1431kRXYHPhXNSZ Tq/RMNAKSKR8TJWkbSx/GkxpzeENWG1PjPRJuQxoifyQsSql8HvOafL3keGqjqS/pE /wBkSAA2JZvN0q2JOva5qtS62kjIj2NVbe7jYu+g=
From: Bence Béky <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab6f306dd674b0dc84e55d27f2be0f2d452a94ce0892cf0000000117a92d1092a169ce1553053a@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/1726/review/153051665@github.com>
In-Reply-To: <quicwg/base-drafts/pull/1726@github.com>
References: <quicwg/base-drafts/pull/1726@github.com>
Subject: Re: [quicwg/base-drafts] Define three QPACK error types, refine error handling. (#1726)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5b916b10eeb17_6ddd3ff972ed45bc48331c"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: bencebeky
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/BDJzn_CdlAqx7t4D3jrYAQ7PETk>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 06 Sep 2018 17:59:48 -0000

bencebeky commented on this pull request.



> @@ -270,8 +279,8 @@ immediately. A stream becomes unblocked when the greatest absolute index in the
 dynamic table becomes greater than or equal to the Largest Reference for all
 header blocks the decoder has started reading from the stream.  If a decoder
 encounters a header block where the actual largest reference is not equal to the
-Largest Reference declared in the prefix, it MAY treat this as a stream error of
-type HTTP_QPACK_DECOMPRESSION_FAILED.
+Largest Reference declared in the prefix, it MUST treat this as an error

My reason for changing this to MUST is the following: if this is a MAY, potentially implementation get deployed that do not signal an error, which allows implementation that have a larger Largest Reference declared to be deployed, and once there are enough implementations out there, if a new one signals an error in conformance to the specification, it will break things, and we'll be stuck with an ecosystem that diverged from the spec.

An encoder should never declare a Largest Reference larger than the actual largest reference, let's encourage decoders to enforce it.

(Note that smaller Largest Reference values cannot be sent because there is already a MUST clause for that in 2.2.2.)

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/pull/1726#pullrequestreview-153051665