BUG/MINOR: flt-trace: Properly compute length of the first DATA block

This bug is quite old. When the length of the first DATA block is computed,
the offset is used instead of the block length minus the offset. It is only
used with random forwarding and there is a test just after to prevent any
issue, so there is no effect.

It could be backported to all stable versions.
This commit is contained in:
Christopher Faulet 2026-02-11 10:20:12 +01:00
parent ccb075fa1b
commit 92307b5fec

View file

@ -162,7 +162,7 @@ trace_get_htx_datalen(struct htx *htx, unsigned int offset, unsigned int len)
blk = htxret.blk;
if (blk && htxret.ret && htx_get_blk_type(blk) == HTX_BLK_DATA) {
data += htxret.ret;
data += htx_get_blksz(blk) - htxret.ret;
blk = htx_get_next_blk(htx, blk);
}
while (blk) {