Subject: [quicwg/base-drafts] 90e2ee: Limit pushes using MAX_PUSH_ID (#711)

From: Martin Thomson <[email-masked]>
Date: Wed, 16 Aug 2017 10:13:03 -0700

Branch: refs/heads/master
  Home:   https://github.com/quicwg/base-drafts
  Commit: 90e2eea6343c620cb7db11ce09ef2602d046b2d8
      https://github.com/quicwg/base-drafts/commit/90e2eea6343c620cb7db11ce09ef2602d046b2d8
  Author: Martin Thomson <[email-masked]>
  Date:   2017-08-16 (Wed, 16 Aug 2017)

  Changed paths:
    M draft-ietf-quic-http.md

  Log Message:
  -----------
  Limit pushes using MAX_PUSH_ID (#711)

* Fix error code definitions

HTTP_MALFORMED_DATA description mentioned HEADERS and it wasn't in the IANA table.

HTTP_WRONG_STREAM was defined as HTTP_SETTINGS_ON_WRONG_STREAM.

* So much effort spent on something so trivial

* Limit pushes using MAX_PUSH_ID

This repurposes SETTINGS_ENABLE_PUSH as the initial limit.

A client can use this to limit the number of outstanding pushes.  I've included
advice on increasing the limit, not as the pushes are first used, but as the
pushes are completed (or cancelled).

There wasn't a rule for handling a truncated push stream header, so I added
that as well.  The HTTP_DUPLICATE_PUSH error was reclaimed for signaling all
three types of error with a push stream header: truncation, duplicate Push ID,
and exceeding MAX_PUSH_ID.

* Fix error codes, prohibit reduction

* Review comments

* Remove push setting in favor of MAX_PUSH_ID

* Remove redundant word