Release 2.10.6

- [BUGFIX] HTTP/3 framing: don't misinterpret rare occurence as error.
- [BUGFIX] Send gap warning due to missing poisoned packet.
This commit is contained in:
Dmitri Tikhonov 2020-02-14 09:11:22 -05:00
parent 35ac25bb73
commit aa82021170
5 changed files with 25 additions and 13 deletions

View file

@ -644,7 +644,7 @@ lsquic_send_ctl_sent_packet (lsquic_send_ctl_t *ctl,
assert(!(packet_out->po_flags & PO_ENCRYPTED));
ctl->sc_last_sent_time = packet_out->po_sent;
pns = lsquic_packet_out_pns(packet_out);
if (packet_out->po_packno == ctl->sc_gap + 1 && pns == PNS_APP)
if (packet_out->po_packno == ctl->sc_gap + 1)
{
assert(!(ctl->sc_flags & SC_POISON));
lsquic_senhist_add(&ctl->sc_senhist, ctl->sc_gap);

View file

@ -3021,12 +3021,8 @@ maybe_close_varsize_hq_frame (struct lsquic_stream *stream)
}
}
else if (!shf->shf_frame_ptr)
{
LSQ_ERROR("dangling HTTP/3 frame, on stream %"PRIu64, stream->id);
stream->conn_pub->lconn->cn_if->ci_internal_error(
stream->conn_pub->lconn, "dangling HTTP/3 frame");
stream_hq_frame_put(stream, shf);
}
LSQ_DEBUG("HQ frame of type 0x%X has not yet been written, not "
"closing", shf->shf_frame_type);
else
{
assert(stream->sm_n_buffered);