mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-01-31 06:51:11 +01:00
Reorganize the Rx path for STREAM frames on bidirectional streams. A new function qcc_recv is implemented on the MUX. It will handle the STREAM frames copy and offset calculation from transport to MUX. Another function named qcc_decode_qcs from the MUX can be called by transport each time new STREAM data has been copied. The architecture is now cleaner with the MUX layer in charge of parsing the STREAM frames offsets. This is required to be able to implement the flow-control on the MUX layer. Note that as a convenience, a STREAM frame is not partially copied to the MUX buffer. This simplify the implementation for the moment but it may change in the future to optimize the STREAM frames handling. For the moment, only bidirectional streams benefit from this change. In the future, it may be extended to unidirectional streams to unify the STREAM frames processing.