]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: qpack: report error on enc/dec stream close
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Tue, 16 Aug 2022 15:42:47 +0000 (17:42 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 17 Aug 2022 09:04:53 +0000 (11:04 +0200)
commit26aa399d6b245da3e82e768dd15931263842d7d2
tree12f295d85f21e6e88dd35ac99e34b5c3c36d4377
parent6b02c6bb471f92291ce4817b181e5c39f0db4018
MINOR: qpack: report error on enc/dec stream close

As specified by RFC 9204, encoder and decoder streams must not be
closed. If the peer behaves incorrectly and closes one of them, emit a
H3_CLOSED_CRITICAL_STREAM connection error.

To implement this, QPACK stream decoding API has been slightly adjusted.
Firstly, fin parameter is passed to notify about FIN STREAM bit.
Secondly, qcs instance is passed via unused void* context. This allows
to use qcc_emit_cc_app() function to report a CONNECTION_CLOSE error.
include/haproxy/qpack-dec.h
src/h3.c
src/qpack-dec.c