mirror of
https://github.com/haproxy/haproxy.git
synced 2026-03-23 10:53:04 -04:00
HAProxy - Load balancer
By being able to return the ssl_sock_ctx, we're now enabling the whole set of SSL sample fetch methods to work on the current SSL context of the QUIC connection, as seen in the following test showing a request forwarded to an HTTP/1 server with plenty of SSL headers filled: 00000001:decrypt.clireq[000f:ffffffff]: GET / HTTP/1.1 00000001:decrypt.clihdr[000f:ffffffff]: host: localhost 00000001:decrypt.clihdr[000f:ffffffff]: user-agent: nghttp3/ngtcp2 client 00000001:decrypt.clihdr[000f:ffffffff]: x-src: 127.0.0.1 00000001:decrypt.clihdr[000f:ffffffff]: x-dst: 127.0.0.4 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_f_serial: D16197E7D3E634E9 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_f_key_alg: rsaEncryption 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_f_sig_alg: RSA-SHA1 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc: 1 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_has_sni: 1 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_sni: blah 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_alpn: h3 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_protocol: TLSv1.3 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_cipher: TLS_AES_256_GCM_SHA384 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_alg_keysize: 256 00000001:decrypt.clihdr[000f:ffffffff]: x-ssl_fc_use_keysize: 256 00000001:decrypt.clihdr[000f:ffffffff]: x-forwarded-for: 127.0.0.1 The code is trivial, but this is marked as medium as there's always the risk that some of the callable functions do not like being called on such SSL contexts. |
||
|---|---|---|
| .github | ||
| addons | ||
| admin | ||
| dev | ||
| doc | ||
| examples | ||
| include | ||
| reg-tests | ||
| scripts | ||
| src | ||
| tests | ||
| .cirrus.yml | ||
| .gitattributes | ||
| .gitignore | ||
| .mailmap | ||
| .travis.yml | ||
| BRANCHES | ||
| CHANGELOG | ||
| CONTRIBUTING | ||
| INSTALL | ||
| LICENSE | ||
| MAINTAINERS | ||
| Makefile | ||
| README | ||
| ROADMAP | ||
| SUBVERS | ||
| VERDATE | ||
| VERSION | ||
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)