Re: [quicwg/base-drafts] encoder stream can deadlock (#1420)

Kazuho Oku <notifications@github.com> Tue, 11 September 2018 00:01 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 23AE7130FD9 for <quic-issues@ietfa.amsl.com>; Mon, 10 Sep 2018 17:01:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.01
X-Spam-Level:
X-Spam-Status: No, score=-8.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01] 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 D-xoac_g-Nlk for <quic-issues@ietfa.amsl.com>; Mon, 10 Sep 2018 17:01:27 -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 4D194130F74 for <quic-issues@ietf.org>; Mon, 10 Sep 2018 17:01:27 -0700 (PDT)
Date: Mon, 10 Sep 2018 17:01:26 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1536624086; bh=FKyyxAJC9OfDXB890zk15H/6D6/+BwO2fXByqWEDWeo=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=2COstfW6KSHQZB/yfC3iMroBO7qgkPNnRxNdH4lN4fL0LCzb/uvK05Aj6Y5dX2JAt gJgH1i1qpVFMAjGkK8SMhcX30jaPDDZcR/UnEJVH+gmzZ3E7wvednOZsO7kqS5FrUd 37QZVlJPxHRSfoEKl5mcYNuUTzze/dO4yCjQXBJc=
From: Kazuho Oku <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab3cb3b576a2aa164ef7854cafe541eb2eeb54f00f92cf0000000117aec7d692a169ce13a9a7d1@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1420/420100423@github.com>
In-Reply-To: <quicwg/base-drafts/issues/1420@github.com>
References: <quicwg/base-drafts/issues/1420@github.com>
Subject: Re: [quicwg/base-drafts] encoder stream can deadlock (#1420)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5b9705d663d7d_4eff3f9dfa4d45b82020f9"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: kazuho
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/PrsH2KUTDfochPYuWENvrXTEfuA>
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: Tue, 11 Sep 2018 00:01:29 -0000

@afrind 
> If an encoder runs out of stream flow control on the encoder stream, it may erroneously send requests (and fill the connection flow control) that depend on bytes that haven't been transmitted. Some text advising caution in this scenario may be warranted.

+1.

Re the issue that @martinthomson initially raised, I think that we should state that:
* a non-streaming decoder should cap the maximum size of an instruction that it processes to avoid memory exhaustion attacks
* a non-streaming decoder that keeps partial instructions in the receive buffer should set the size of the receive buffer equal to or greater than the maximum permitted size of the instruction

-- 
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/issues/1420#issuecomment-420100423