don't reset the QPACK encoder / decoder streams

We don't need these streams, since our QPACK implementation doesn't use the
dynamic table yet. However, we MUST NOT close / reset these streams. Instead,
just ignore them.
This commit is contained in:
Marten Seemann 2021-03-04 09:47:57 +08:00
parent f513437854
commit 6f32d2df1d
4 changed files with 73 additions and 7 deletions

View file

@ -156,6 +156,10 @@ func (c *client) handleUnidirectionalStreams() {
// We're only interested in the control stream here.
switch streamType {
case streamTypeControlStream:
case streamTypeQPACKEncoderStream, streamTypeQPACKDecoderStream:
// Our QPACK implementation doesn't use the dynamic table yet.
// TODO: check that only one stream of each type is opened.
return
case streamTypePushStream:
// We never increased the Push ID, so we don't expect any push streams.
c.session.CloseWithError(quic.ErrorCode(errorIDError), "")