]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: quic: extend detection of UDP API OS features
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Wed, 26 Jun 2024 15:09:08 +0000 (17:09 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Thu, 11 Jul 2024 09:02:44 +0000 (11:02 +0200)
commit5bddf39fb2b90f56ff3255bbc6515e898fde2360
tree93d5fef082c0d75c5229467d2f31b0cb7a405e51
parentcac47d19bd00bc66cc14267b6ee750e6300c255d
MINOR: quic: extend detection of UDP API OS features

QUIC haproxy implementation relies on specific OS features to activate
some UDP optimization. One of these is the ability to bind multiple
sockets on the same address, which is necessary to have a dedicated
socket for each QUIC connections. This feature support is tested during
startup via an internal proto-quic function. It automatically deactivate
socket per connection if OS is not compatible.

The purpose of this patch is to render this QUIC feature detection code
more generic. Function is renamed quic_test_socketopts() and is still
invoked on startup. Its internal code has been refactored to be able to
implement other features support test in it.

Return value has also been changed and is now taken into account. In
case of ERR_FATAL, haproxy startup will be interrupted. This happens on
socket() syscall failure used to duplicate a QUIC listener FD.

This commit will become necessary to detect GSO support on startup.
src/proto_quic.c