Changes since version 2.4-dev18 : Amaury Denoyelle (15): MINOR: srv: close all idle connections on shutdown MINOR: connection: move session_list member in a union MEDIUM: mux_h1: release idling frontend conns on soft-stop MEDIUM: connection: close front idling connection on soft-stop MINOR: global: define tainted flag MINOR: cfgparse: add a new field flags in cfg_keyword MINOR: cfgparse: implement experimental config keywords MINOR: action: replace match_pfx by a keyword flags field MINOR: action: implement experimental actions MINOR: cli: set tainted when using CLI expert/experimental mode MINOR: stats: report tainted on show info MINOR: http_act: mark normalize-uri as experimental BUILD: fix usage of ha_alert without format string MINOR: proxy: define PR_CAP_LB BUG/MINOR: server: do not report diag for peer servers with null weight Christopher Faulet (17): BUG/MINOR: hlua: Don't rely on top of the stack when using Lua buffers MINOR: channel: Rely on HTX version if appropriate in channel_may_recv() BUG/MINOR: stream-int: Don't block reads in si_update_rx() if chn may receive MINOR: conn-stream: Force mux to wait for read events if abortonclose is set MEDIUM: mux-h1: Don't block reads when waiting for the other side BUG/MEDIUM: mux-h1: Properly report client close if abortonclose option is set REGTESTS: Add script to test abortonclose option MINOR: mux-h1: clean up conditions to enabled and disabled splicing MINOR: mux-h1: Subscribe for sends if output buffer is not empty in h1_snd_pipe MINOR: mux-h1: Always subscribe for reads when splicing is disabled MEDIUM: mux-h1: Wake H1 stream when both sides a synchronized CLEANUP: mux-h1: rename WAIT_INPUT/WAIT_OUTPUT flags MINOR: mux-h1: Manage processing blocking flags on the H1 stream BUG/MINOR: stream: Decrement server current session counter on L7 retry BUG/MINOR: stream: Reset stream final state and si error type on L7 retry BUG/MINOR: checks: Handle synchronous connect when a tcpcheck is started BUG/MINOR: checks: Reschedule check on observe mode only if fastinter is set Ilya Shipitsin (1): CI: Github Actions: switch to LibreSSL-3.3.3 Remi Tricot-Le Breton (2): DOC: ssl: Extra files loading now works for backends too DOC: ssl: Add information about crl-file option William Lallemand (1): BUG/MINOR: ssl/cli: fix a lock leak when no memory available Willy Tarreau (35): BUG/MEDIUM: cli: prevent memory leak on write errors MINOR: debug: add a new "debug dev sym" command in expert mode MINOR: pools/debug: slightly relax DEBUG_DONT_SHARE_POOLS MINOR: tools: add functions to retrieve the address of a symbol CLEANUP: activity: mark the profiling and task_profiling_mask __read_mostly MINOR: activity: add a "memory" entry to "profiling" MINOR: activity: declare the storage for memory usage statistics MEDIUM: activity: collect memory allocator statistics with USE_MEMORY_PROFILING MINOR: activity: clean up the show profiling io_handler a little bit MINOR: activity: make "show profiling" support a few arguments MINOR: activity: make "show profiling" also dump the memoery usage MINOR: activity: add the profiling.memory global setting BUILD: makefile: add new option USE_MEMORY_PROFILING BUG/MINOR: config: fix uninitialized initial state in ".if" block evaluator BUG/MINOR: config: add a missing "ELIF_TAKE" test for ".elif" condition evaluator BUG/MINOR: config: .if/.elif should also accept negative integers MINOR: config: centralize the ".if"/".elif" condition parser and evaluator MINOR: config: keep up-to-date current file/line/section in the global struct MINOR: config: support some pseudo-variables for file/line/section BUILD: activity: do not include malloc.h MINOR: arg: improve the error message on missing closing parenthesis MINOR: global: export the build features string list MINOR: global: add version comparison functions MINOR: config: improve .if condition error reporting MINOR: config: make cfg_eval_condition() support predicates with arguments MINOR: config: add predicate "defined()" to conditional expression blocks MINOR: config: add predicates "streq()" and "strneq()" to conditional expressions MINOR: config: add predicate "feature" to detect certain built-in features MINOR: config: add predicates "version_atleast" and "version_before" to cond blocks BUG/MINOR: activity: use the new pointer to calculate the new size in realloc() BUG/MINOR: stream: properly clear the previous error mask on L7 retries MEDIUM: log: slightly refine the output format of alerts/warnings/etc MINOR: config: add a new message directive: .diag CLEANUP: cli/tree-wide: properly re-align the CLI commands' help messages ADDONS: make addons/ discoverable by git via .gitignore