Changes since version 2.4-dev4 : Amaury Denoyelle (2): MINOR: check: do not ignore a connection header for http-check send REGTESTS: complete http-check test Christian Ruppert (1): BUILD: hpack: hpack-tbl-t.h uses VAR_ARRAY but does not include compiler.h Christopher Faulet (1): BUG/MINOR: tcpcheck: Report a L7OK if the last evaluated rule is a send rule Dragan Dosen (6): IMPORT: xxhash: update to v0.8.0 that introduces stable XXH3 variant MEDIUM: xxhash: use the XXH3 functions to generate 64-bit hashes MEDIUM: xxhash: use the XXH_INLINE_ALL macro to inline all functions CLEANUP: xxhash: remove the unused src/xxhash.c MINOR: sample: add the xxh3 converter REGTESTS: add tests for the xxh3 converter Frédéric Lécaille (35): MINOR: protocol: Create proto_quic QUIC protocol layer. MINOR: connection: Attach a "quic_conn" struct to "connection" struct. MINOR: quic: Redefine control layer callbacks which are QUIC specific. MINOR: ssl_sock: Initialize BIO and SSL objects outside of ssl_sock_init() MINOR: connection: Add a new xprt to connection. MINOR: ssl: Export definitions required by QUIC. MINOR: cfgparse: Do not modify the QUIC xprt when parsing "ssl". MINOR: tools: Add support for QUIC addresses parsing. MINOR: quic: Add definitions for QUIC protocol. MINOR: quic: Import C source code files for QUIC protocol. MINOR: listener: Add QUIC info to listeners and receivers. MINOR: server: Add QUIC definitions to servers. MINOR: ssl: SSL CTX initialization modifications for QUIC. MINOR: ssl: QUIC transport parameters parsing. MINOR: quic: QUIC socket management finalization. MINOR: cfgparse: QUIC default server transport parameters init. MINOR: quic: Enable the compilation of QUIC modules. MAJOR: quic: Make usage of ebtrees to store QUIC ACK ranges. MINOR: quic: Attempt to make trace more readable MINOR: quic: Make usage of the congestion control window. MINOR: quic: Flag RX packet as ack-eliciting from the generic parser. MINOR: quic: Code reordering to help in reviewing/modifying. MINOR: quic: Add traces to congestion avoidance NewReno callback. MINOR: quic: Display the SSL alert in ->ssl_send_alert() callback. MINOR: quic: Update the initial salt to that of draft-29. MINOR: quic: Add traces for in flght ack-eliciting packet counter. MINOR: quic: make a packet build fails when qc_build_frm() fails. MINOR: quic: Add traces for quic_packet_encrypt(). MINOR: qpack: Add static header table definitions for QPACK. CLEANUP: qpack: Wrong comment about the draft for QPACK static header table. CLEANUP: quic: Remove useless QUIC event trace definitions. BUG/MINOR: quic: Possible CRYPTO frame building errors. MINOR: quic: Pass quic_conn struct to frame parsers. BUG/MINOR: quic: Wrong STREAM frames parsing. MINOR: quic: Drop packets with STREAM frames with wrong direction. Ilya Shipitsin (3): CI: travis-ci: drop coverity scan builds CI: GitHub Actions: enable daily Coverity scan CI: github actions: build several popular "contrib" tools Olivier Houchard (1): MINOR: atomic: don't use ; to separate instruction on aarch64. Remi Tricot-Le Breton (10): MINOR: cache: Refactoring of secondary_key building functions MINOR: cache: Avoid storing responses whose secondary key was not correctly calculated BUG/MINOR: cache: Manage multiple headers in accept-encoding normalization MINOR: cache: Add specific secondary key comparison mechanism MINOR: http: Add helper functions to trim spaces and tabs MEDIUM: cache: Manage a subset of encodings in accept-encoding normalizer REGTESTS: cache: Simplify vary.vtc file REGTESTS: cache: Add a specific test for the accept-encoding normalizer MINOR: cache: Remove redundant test in http_action_req_cache_use MINOR: cache: Replace the "process-vary" option's expected values Thayne McCombs (2): MEDIUM: stick-tables: Add srvkey option to stick-table REGTESTS: add test for stickiness using "srvkey addr" Tim Duesterhus (14): BUG/MEDIUM: mux_h2: Add missing braces in h2_snd_buf()around trace+wakeup BUG/MEDIUM: cache: Fix hash collision in `accept-encoding` handling for `Vary` BUG/MINOR: sink: Return an allocation failure in __sink_new if strdup() fails BUG/MINOR: lua: Fix memory leak error cases in hlua_config_prepend_path MINOR: lua: Use consistent error message 'memory allocation failed' CLEANUP: Compare the return value of `XXXcmp()` functions with zero CLEANUP: Apply the coccinelle patch for `XXXcmp()` on include/ CLEANUP: Apply the coccinelle patch for `XXXcmp()` on contrib/ CLEANUP: ssl: Remove useless loop in tlskeys_list_get_next() CLEANUP: ssl: Remove useless local variable in tlskeys_list_get_next() BUG/MINOR: cfgparse: Fail if the strdup() for `rule->be.name` for `use_backend` fails CLEANUP: Reduce scope of `header_name` in http_action_store_cache() CLEANUP: Reduce scope of `hdr_age` in http_action_store_cache() DOC: Improve the message printed when running `make` w/o `TARGET` William Dauchy (1): CLEANUP: spoe: fix typo on `var_check_arg` comment Willy Tarreau (5): MINOR: time: increase the minimum wakeup interval to 60s BUILD: Makefile: disable -Warray-bounds until it's fixed in gcc 11 MINOR: ssl: make tlskeys_list_get_next() take a list element Revert "BUILD: Makefile: disable -Warray-bounds until it's fixed in gcc 11" CLEANUP: mworker: remove duplicate pointer tests in cfg_parse_program()