BUG/MINOR: mux-quic: fix possible infinite loop during decoding

With the support of multiple Rx buffers per QCS instance, stream
decoding in qcc_io_recv() has been reworked for the next haproxy
release. An issue appears in a double while loop : a break statement is
used in the inner loop, which is not sufficient as it should instead
exit from the outer one.

Fix this by replacing break with a goto statement.

No need to backport this.
This commit is contained in:
Amaury Denoyelle 2025-04-23 17:27:24 +02:00
parent 3dcda87e58
commit fbedb8746f

View File

@ -2952,10 +2952,11 @@ static int qcc_io_recv(struct qcc *qcc)
LIST_DEL_INIT(&qcs->el_recv);
if (ret <= 0)
break;
goto done;
}
}
done:
TRACE_LEAVE(QMUX_EV_QCC_RECV, qcc->conn);
return 0;
}