gfe-relnote: Emit H3_SETTINGS_ERROR and H3_MISSING_SETTINGS when appropriate. Protected by gfe2_reloadable_flag_quic_enable_version_draft_25_v3 and gfe2_reloadable_flag_quic_enable_version_draft_27.
Emit H3_SETTINGS_ERROR when receiving a SETTINGS frame with duplicate setting
identifier. Emit H3_MISSING_SETTINGS when receiving a CANCEL_PUSH, GOAWAY,
MAX_PUSH_ID, PRIORITY_UPDATE, or unknown frame before a SETTINGS frame on the
control stream. Before this CL, H3_FRAME_UNEXPECTED was emitted for duplicate
SETTINGS or a PRIORITY_UPDATE or unknow frame before a SETTINGS, and no error
was signalled for a CANCEL_PUSH, GOAWAY, or MAX_PUSH_ID being the first frame on
the control stream.
If a DATA, HEADERS, or PUSH_PROMISE frame arrives on the control stream, keep
the error code H3_FRAME_UNEXPECTED, even if no SETTINGS frame has been received
yet. The specification has conflicting MUSTs, so either error code is
acceptable.
PiperOrigin-RevId: 304391962
Change-Id: If47b3940761e7955ee645bd59e4969302164a051
8 files changed