BUG/MINOR: quic: Missing STREAM frame type updated
authorFrédéric Lécaille <flecaille@haproxy.com>
Mon, 20 Mar 2023 13:32:59 +0000 (14:32 +0100)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Mon, 27 Mar 2023 14:01:44 +0000 (16:01 +0200)
commitc425e03b28168d96c32afcd9bfb86bcb66b733be
tree3b033b4b8ec17fa5bfbfc79fe2863ba2f0494aeb
parent821581c990c243de16b69a05fc57401503ef7f3e
BUG/MINOR: quic: Missing STREAM frame type updated

This patch follows this commit which was not sufficient:
  BUG/MINOR: quic: Missing STREAM frame data pointer updates

Indeed, after updating the ->offset field, the bit which informs the
frame builder of its presence must be systematically set.

This bug was revealed by the following BUG_ON() from
quic_build_stream_frame() :
  bug condition "!!(frm->type & 0x04) != !!stream->offset.key" matched at src/quic_frame.c:515

This should fix the last crash occured on github issue #2074.

Must be backported to 2.6 and 2.7.
include/haproxy/quic_frame.h
src/quic_conn.c