Skip to content

Commit

Permalink
Merge pull request #7 from davidben/settings-ack
Browse files Browse the repository at this point in the history
Forbid SETTINGS with ACK.
  • Loading branch information
vasilvv authored Jun 5, 2023
2 parents d9a0bcd + a5dc81e commit d322c53
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions draft-vvv-httpbis-alps.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,16 +95,20 @@ in ALPS, so the receiver MUST ignore unrecognized frames in the ALPS payload.
If ALPS is successfully negotiated during a TLS handshake for an HTTP/2
connection, the protocol is updated as follows:

Sending a SETTINGS frame in ALPS supersedes the requirement to send a SETTINGS
frame at the beginning of the connection. All settings exchanged via ALPS
SHALL be automatically treated as acknowledged. Implementations MAY continue
to send additional SETTINGS frames over the connection. See {{early-data}} for
guidance.
Sending a SETTINGS frame without the ACK flag in ALPS supersedes the
requirement to send a SETTINGS frame at the beginning of the connection. All
settings exchanged via ALPS SHALL be automatically treated as acknowledged.
Implementations MAY continue to send additional SETTINGS frames over the
connection. See {{early-data}} for guidance.

Since settings exchanged through ALPS are always available at the beginning of
the connection, HTTP/2 extensions MAY opt to require those to be sent through
ALPS.

Implementations MUST NOT send SETTINGS frames with the ACK flag in ALPS. If
the peer sends such a frame in ALPS, the receiver MUST treat it as a connection
error of type PROTOCOL_ERROR.

[[OPEN ISSUE: Is SETTINGS in ALPS mandatory or optional? Should it be the
first frame?]]

Expand Down

0 comments on commit d322c53

Please sign in to comment.