A H3 peer must not close its qpack encoder/decoder stream. This is
already detected when a stream frame with FIN is received.
This patch extends the detection to RESET_STREAM frames. A similar error
H3_CLOSED_CRITICAL_STREAM is emitted.
This must be backported up to 2.8.
qcc_report_glitch(qcs->qcc, 1);
return 1;
}
+ else if (h3s->type == H3S_T_QPACK_DEC || h3s->type == H3S_T_QPACK_ENC) {
+ TRACE_ERROR("closure detected on QPACK stream", H3_EV_H3S_END, qcs->qcc->conn, qcs);
+ qcc_set_error(qcs->qcc, H3_ERR_CLOSED_CRITICAL_STREAM, 1,
+ muxc_tevt_type_proto_err);
+ qcc_report_glitch(qcs->qcc, 1);
+ return 1;
+ }
return 0;
}