mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-11-28 14:21:00 +01:00
A recent review was done to rationalize ERR/EOS/EOI flags on stream endpoint. A common definition for both H1/H2/QUIC mux have been written in the following documentation : ./doc/internals/stconn-close.txt In QUIC it is possible to close each channels of a stream independently with RESET_STREAM and STOP_SENDING frames. When a RESET_STREAM is received, it indicates that the peer has ended its transmission in an abnormal way. However, it is still ready to receive. Previously, on RESET_STREAM reception, QUIC MUX set the ERR flag on stream-endpoint. However, according to the QUIC mechanism, it should be instead EOS but this was impossible due to a BUG_ON() which prevents EOS without EOI or ERR. This BUG_ON was only present because this case was never used before the introduction of QUIC. It was removed in a recent commit which allows us to now properly set EOS alone on RESET_STREAM reception. In practice, this change allows to continue to send data even after RESET_STREAM reception. However, currently browsers always emit it with a STOP_SENDING as this is used to abort the whole H3 streams. In the end this will result in a stream-endpoint with EOS and ERR_PENDING/ERR flags. This should be backported up to 2.7.
The HAProxy documentation has been split into a number of different files for ease of use. Please refer to the following files depending on what you're looking for : - INSTALL for instructions on how to build and install HAProxy - BRANCHES to understand the project's life cycle and what version to use - LICENSE for the project's license - CONTRIBUTING for the process to follow to submit contributions The more detailed documentation is located into the doc/ directory : - doc/intro.txt for a quick introduction on HAProxy - doc/configuration.txt for the configuration's reference manual - doc/lua.txt for the Lua's reference manual - doc/SPOE.txt for how to use the SPOE engine - doc/network-namespaces.txt for how to use network namespaces under Linux - doc/management.txt for the management guide - doc/regression-testing.txt for how to use the regression testing suite - doc/peers.txt for the peers protocol reference - doc/coding-style.txt for how to adopt HAProxy's coding style - doc/internals for developer-specific documentation (not all up to date)
Description
Languages
C
98%
Shell
0.9%
Makefile
0.5%
Lua
0.2%
Python
0.2%