version 2.1r1

2021/10/08 : 2.1r1 (1.0.0-239.715) - BUG/MEDIUM: http-ana: Clear request analyzers when applying redirect rule - BUG/MEDIUM: filters: Fix a typo when a filter is attached blocking the release - BUG/MINOR: filters: Set right FLT_END analyser depending on channel - BUG/MINOR: filters: Always set FLT_END analyser when CF_FLT_ANALYZE flag is set - BUG/MEDIUM: http-ana: Reset channels analysers when returning an error - BUG/MINOR: stream: Don't release a stream if FLT_END is still registered - BUG/MINOR: tcp-rules: Stop content rules eval on read error and end-of-input - BUG/MAJOR: lua: use task_wakeup() to properly run a task once - BUG/MEDIUM: lua: fix wakeup condition from sleep() - DOC: peers: fix doc "enable" statement on "peers" sections - BUG/MINOR: mux-h1/mux-fcgi: Sanitize TE header to only send "trailers" - BUG/MEDIUM: stream: Stop waiting for more data if SI is blocked on RXBLK_ROOM - BUG/MEDIUM: stream-int: Notify stream that the mux wants more room to xfer data - BUG/MEDIUM: mux-h1: Adjust conditions to ask more space in the channel buffer - BUG/MINOR: http-ana: increment internal_errors counter on response error - BUG/MINOR: h1-htx: Fix a typo when request parser is reset - BUG/MINOR: server: allow 'enable health' only if check configured - BUG/MINOR: cli/payload: do not search for args inside payload - DOC: management: certificate files must be sanitized before injection - BUG/MINOR: compat: make sure __WORDSIZE is always defined - BUG/MEDIUM: stream-int: Don't block SI on a channel policy if EOI is reached - BUG/MINOR: systemd: ExecStartPre must use -Ws - MINOR: action: Use a generic function to check validity of an action rule list - Revert "BUG/MINOR: stream-int: Don't block reads in si_update_rx() if chn may receive" 2021/09/09 : 2.1r1 (1.0.0-239.691) - DOC/MINOR: fix typo in management document - MINOR: mux-h1/proxy: Add a proxy option to disable clear h2 upgrade - DOC: config: Fix 'http-response send-spoe-group' documentation - DOC: Improve the lua documentation - BUG/MEDIUM: spoe: Fix policy to close applets when SPOE connections are queued - BUG/MEDIUM: spoe: Create a SPOE applet if necessary when the last one is released - MINOR: spoe: Add a pointer on the filter config in the spoe_agent structure - BUG/MINOR: server: update last_change on maint->ready transitions too - BUG/MINOR: connection: Add missing error labels to conn_err_code_str - BUG/MINOR: mux-h2: Obey dontlognull option during the preface - BUG/MINOR: systemd: must check the configuration using -Ws - BUG/MINOR: mworker: do not export HAPROXY_MWORKER_REEXEC across programs - BUG/MEDIUM: tcp-check: Do not dereference inexisting connection - BUG/MINOR: server: Forbid to set fqdn on the CLI if SRV resolution is enabled - BUG/MINOR: server-state: load SRV resolution only if params match the config - CLEANUP: pools: remove now unused seq and pool_free_list - BUG/MAJOR: pools: fix possible race with free() in the lockless variant - MEDIUM: pools: use a single pool_gc() function for locked and lockless - MINOR: pools: do not maintain the lock during pool_flush() - BUG/MINOR: pools: fix a possible memory leak in the lockless pool_flush() - MINOR: pools/debug: slightly relax DEBUG_DONT_SHARE_POOLS - BUG/MINOR: peers: fix data_type bit computation more than 32 data_types - MINOR: resolvers: Reset server IP on error in resolv_get_ip_from_response() - BUG/MINOR: resolvers: Reset server IP when no ip is found in the response - DOC: config: use CREATE USER for mysql-check - DOC: peers: fix the protocol tag name in the doc - DOC: stick-table: add missing documentation about gpt0 stored type - BUG/MINOR: stick-table: fix several printf sign errors dumping tables - BUG/MINOR: cli: fix server name output in "show fd" - BUG/MINOR: server/cli: Fix locking in function processing "set server" command - BUG/MEDIUM: server/cli: Fix ABBA deadlock when fqdn is set from the CLI - BUG/MINOR: resolvers: answser item list was randomly purged or errors - DOC: config: Add missing actions in "tcp-request session" documentation - BUG/MINOR: mux-fcgi: Expose SERVER_SOFTWARE parameter by default - BUG/MEDIUM: dns: send messages on closed/reused fd if fd was detected broken - MINOR: mux-h2: obey http-ignore-probes during the preface - BUG/MINOR: mworker: fix typo in chroot error message - BUG/MINOR: ssl: use atomic ops to update global shctx stats - BUG/MEDIUM: shctx: use at least thread-based locking on USE_PRIVATE_CACHE - BUG/MINOR: stick-table: insert srv in used_name tree even with fixed id - DOC: lua: Add a warning about buffers modification in HTTP - BUG/MEDIUM: dns: reset file descriptor if send returns an error - BUG/MINOR: ssl: OCSP stapling does not work if expire too far in the future - BUG/MINOR: proxy: Missing calloc return value check in chash_init_server_tree - BUG/MINOR: http: Missing calloc return value check in make_arg_list - BUG/MINOR: http: Missing calloc return value check while parsing redirect rule - BUG/MINOR: worker: Missing calloc return value check in mworker_env_to_proc_list - BUG/MINOR: compression: Missing calloc return value check in comp_append_type/algo - BUG/MINOR: http: Missing calloc return value check while parsing tcp-request rule - BUG/MINOR: http: Missing calloc return value check while parsing tcp-request/tcp-response - BUG/MINOR: proxy: Missing calloc return value check in proxy_defproxy_cpy - BUG/MINOR: proxy: Missing calloc return value check in proxy_parse_declare - BUG/MINOR: http: Missing calloc return value check in parse_http_req_capture - BUG/MINOR: ssl: Missing calloc return value check in ssl_init_single_engine - BUG/MINOR: peers: Missing calloc return value check in peers_register_table - BUG/MINOR: server: Missing calloc return value check in srv_parse_source - BUG/MINOR: http-ana: Handle L7 retries on refused early data before K/A aborts - BUG/MINOR: http-comp: Preserve HTTP_MSGF_COMPRESSIONG flag on the response - BUG/MEDIUM: filters: Exec pre/post analysers only one time per filter - BUG/MINOR: stream-int: Don't block reads in si_update_rx() if chn may receive - MINOR: channel: Rely on HTX version if appropriate in channel_may_recv() - BUG/MINOR: http_fetch: fix possible uninit sockaddr in fetch_url_ip/port - BUG/MINOR: stream: Reset stream final state and si error type on L7 retry - BUG/MINOR: stream: properly clear the previous error mask on L7 retries - BUG/MINOR: stream: Decrement server current session counter on L7 retry - BUG/MINOR: hlua: Don't rely on top of the stack when using Lua buffers 2021/09/03 : 2.1r1 (1.0.0-238.625) - BUG/MAJOR: htx: fix missing header name length check in htx_add_header/trailer - CLEANUP: htx: remove comments about "must be < 256 MB" - BUG/MINOR: config: reject configs using HTTP with bufsize >= 256 MB - DOC: configuration: remove wrong tcp-request examples in tcp-response - CLEANUP: Add missing include guard to signal.h - BUG/MINOR: tools: Fix loop condition in dump_text() - BUG/MINOR threads: Use get_(local|gm)time instead of (local|gm)time - BUG/MINOR: ebtree: remove dependency on incorrect macro for bits per long - BUG/MINOR: lua: use strlcpy2() not strncpy() to copy sample keywords - MINOR: compiler: implement an ONLY_ONCE() macro - BUG/MEDIUM: base64: check output boundaries within base64{dec,urldec} - BUG/MINOR: stick-table: fix the sc-set-gpt* parser when using expressions - BUG/MEDIUM: sock: really fix detection of early connection failures in for 2.3- 2021/08/20 : 2.1r1 (1.0.0-238.612) - BUG/MEDIUM: h2: match absolute-path not path-absolute for :path 2021/08/17 : 2.1r1 (1.0.0-237.611) - REGTESTS: add a test to prevent h2 desync attacks - BUG/MEDIUM: h2: give :authority precedence over Host - BUG/MAJOR: h2: enforce stricter syntax checks on the :method pseudo-header - BUG/MAJOR: h2: verify that :path starts with a '/' before concatenating it - BUG/MAJOR: h2: verify early that non-http/https schemes match the valid syntax - MINOR: http: add a new function http_validate_scheme() to validate a scheme - BUG/MEDIUM: mux-h2: Handle remaining read0 cases on partial frames - BUG/MEDIUM: mworker: do not register an exit handler if exit is expected - BUILD: add detection of missing important CFLAGS - BUG/MEDIUM: sock: make sure to never miss early connection failures - BUG/MAJOR: server: fix deadlock when changing maxconn via agent-check - BUG/MAJOR: queue: set SF_ASSIGNED when setting strm->target on dequeue - BUG/MAJOR: htx: Fix htx_defrag() when an HTX block is expanded - BUG/MAJOR: server: prevent deadlock when using 'set maxconn server' - BUG/MEDIUM: ebtree: Invalid read when looking for dup entry - BUG/MEDIUM: cli: prevent memory leak on write errors 2021/04/29 : 2.1r1 (1.0.0-235.595) - BUG/MINOR: mux-fcgi: Don't send normalized uri to FCGI application - MINOR: No longer rely on deprecated sample fetches for predefined ACLs - DOC: clarify that compression works for HTTP/2 - MINOR: peers: add informative flags about resync process for debugging - BUG/MEDIUM: peers: reset tables stage flags stages on new conns - BUG/MEDIUM: peers: re-work updates lookup during the sync on the fly - BUG/MEDIUM: peers: reset commitupdate value in new conns - BUG/MEDIUM: peers: reset starting point if peers appears longly disconnected - BUG/MEDIUM: peers: stop considering ack messages teaching a full resync - BUG/MEDIUM: peers: register last acked value as origin receiving a resync req - BUG/MEDIUM: peers: initialize resync timer to get an initial full resync - BUG/MINOR: applet: Notify the other side if data were consumed by an applet - BUG/MINOR: htx: Preserve HTX flags when draining data from an HTX message - BUG/MEDIUM: peers: re-work refcnt on table to protect against flush - BUG/MEDIUM: peers: re-work connection to new process during reload. - BUG/MINOR: peers: remove useless table check if initial resync is finished - BUG/MEDIUM: mux-h2: Properly handle shutdowns when received with data - BUG/MINOR: mworker: don't use oldpids[] anymore for reload - BUG/MINOR: mworker/init: don't reset nb_oldpids in non-mworker cases - BUG/MEDIUM: config: fix cpu-map notation with both process and threads - BUG/MEDIUM: mux-h2: Fix dfl calculation when merging CONTINUATION frames - BUG/MAJOR: mux-h2: Properly detect too large frames when decoding headers - BUG/MINOR: server: free srv.lb_nodes in free_server - BUG/MINOR: mux-h1: Release idle server H1 connection if data are received - BUG/MINOR: logs: Report the true number of retries if there was no connection - BUG/MINOR: http_htx: Remove BUG_ON() from http_get_stline() function - BUG/MINOR: http-fetch: Make method smp safe if headers were already forwarded - BUG/MINOR: connection: Fix fc_http_major and bc_http_major for TCP connections - BUG/MEDIUM: threads: Ignore current thread to end its harmless period - DOC: ssl: Certificate hot update only works on fronted certificates - BUG/MEDIUM: sample: Fix adjusting size in field converter - BUG/MINOR: tools: fix parsing "us" unit for timers - MINOR/BUG: mworker/cli: do not use the unix_bind prefix for the master CLI socket 2021/04/14 : 2.1r1 (1.0.0-235.562) - BUG/MEDIUM: task: close a possible data race condition on a tasklet's list link - MINOR: task: remove __tasklet_remove_from_tasklet_list() 2021/04/09 : 2.1r1 (1.0.0-235.560) - BUG/MINOR: stats: Apply proper styles in HTML status page. - BUG/MEDIUM: lua: Always init the lua stack before referencing the context - BUG/MEDIUM: debug/lua: Use internal hlua function to dump the lua traceback - MINOR: lua: Slightly improve function dumping the lua traceback - DOC: tune: explain the origin of block size for ssl.cachesize - DOC: Explicitly state only IPv4 are supported by forwardfor/originalto options 2021/04/02 : 2.1r1 (1.0.0-235.554) - BUG/MINOR: http_fetch: make hdr_ip() resistant to empty fields - BUILD: tcp: use IPPROTO_IPV6 instead of SOL_IPV6 on FreeBSD/MacOS - BUG/MINOR: tcp: fix silent-drop workaround for IPv6 - BUG/MEDIUM: mux-h1: make h1_shutw_conn() idempotent - BUG/MINOR: http_fetch: make hdr_ip() reject trailing characters - MINOR: tools: make url2ipv4 return the exact number of bytes parsed - BUG/MEDIUM: thread: Fix a deadlock if an isolated thread is marked as harmless - BUG/MEDIUM: time: make sure to always initialize the global tick 2021/03/24 : 2.1r1 (1.0.0-234.546) - BUG/MEDIUM: freq_ctr/threads: use the global_now_ms variable - MINOR: time: also provide a global, monotonic global_now_ms timer 2021/03/18 : 2.1r1 (1.0.0-234.544) - MINOR: hapee: Update the list of backported/hapee/dropped patches - BUG/MINOR: resolvers: Add missing case-insensitive comparisons of DNS hostnames - MINOR: resolvers: Don't try to match immediatly renewed ADD items - MINOR: resolvers: Use milliseconds for cached items in resolver responses - BUG/MEDIUM: resolvers: Skip DNS resolution at startup if SRV resolution is set - BUG/MEDIUM: resolvers: Don't release resolution from a requester callbacks - MINOR: resolvers: Directly call srvrq_update_srv_state() when possible - MINOR: resolvers: Add function to change the srv status based on SRV resolution - MINOR: resolvers: Purge answer items when a SRV resolution triggers an error - MINOR: resolvers: Use a function to remove answers attached to a resolution - BUG/MEDIUM: resolvers: Trigger a DNS resolution if an ADD item is obsolete - BUG/MINOR; resolvers: Ignore DNS resolution for expired SRV item - MINOR: resolvers: new function find_srvrq_answer_record() - BUG/MEDIUM: resolvers: Fix the loop looking for an existing ADD item - BUG/MEDIUM: resolvers: Don't set an address-less server as UP - BUG/MINOR: resolvers: Unlink DNS resolution to set RMAINT on SRV resolution - BUG/MINOR: resolvers: Reset server address on DNS error only on status change - BUG/MINOR: resolvers: Consider server to have no IP on DNS resolution error - Revert "BUG/MINOR: resolvers: Only renew TTL for SRV records with an additional record" - BUG/MEDIUM: resolvers: Reset address for unresolved servers - BUG/MEDIUM: resolvers: Reset server address and port for obselete SRV records - BUG/MINOR: resolvers: new callback to properly handle SRV record errors - BUG/MINOR: resolvers: Only renew TTL for SRV records with an additional record - BUG/MINOR: resolvers: Fix condition to release received ARs if not assigned - BUG/MINOR: freq_ctr/threads: make use of the last updated global time - MINOR: time: export the global_now variable - CLEANUP: tcp-rules: add missing actions in the tcp-request error message - BUG/MINOR: session: Add some forgotten tests on session's listener - BUG/MINOR: proxy/session: Be sure to have a listener to increment its counters - BUG/MEDIUM: filters: Set CF_FL_ANALYZE on channels when filters are attached - BUG/MEDIUM: session: NULL dereference possible when accessing the listener - BUG/MINOR: ssl: don't truncate the file descriptor to 16 bits in debug mode - BUG/MINOR: hlua: Don't strip last non-LWS char in hlua_pushstrippedstring() - BUG/MEDIUM: lists: Avoid an infinite loop in MT_LIST_TRY_ADDQ(). - BUG/MEDIUM: lists: Lock the element while we check if it is in a list. - BUG/MINOR: http-ana: Don't increment HTTP error counter on read error/timeout - BUG/MINOR: mux-h2: Fix typo in scheme adjustment - DOC: spoe: Add a note about fragmentation support in HAProxy - BUG/MEDIUM: spoe: Kill applets if there are pending connections and nbthread > 1 - BUG/MINOR: connection: Use the client's dst family for adressless servers - BUG/MINOR: tcp-act: Don't forget to set the original port for IPv4 set-dst rule - BUG/MINOR: http-ana: Only consider dst address to process originalto option - BUG/MINOR: mux-h1: Immediately report H1C errors from h1_snd_buf() - BUG/MINOR: proxy: wake up all threads when sending the hard-stop signal - BUG/MEDIUM: cli/shutdown sessions: make it thread-safe - BUG/MEDIUM: proxy: use thread-safe stream killing on hard-stop - BUG/MEDIUM: vars: make functions vars_get_by_{name,desc} thread-safe - BUG/MINOR: sample: secure convs that accept base64 string and var name as args - BUG/MINOR: ssl/cli: potential null pointer dereference in "set ssl cert" - BUG/MEDIUM: mux-h1: Fix handling of responses to CONNECT other than 200-ok - BUG/MINOR: server: Be sure to cut the last parsed field of a server-state line - BUG/MINOR: server: Init params before parsing a new server-state line - BUG/MINOR: sample: Always consider zero size string samples as unsafe - BUG/MINOR: checks: properly handle wrapping time in __health_adjust() - BUG/MINOR: session: atomically increment the tracked sessions counter - BUG/MINOR: server: Remove RMAINT from admin state when loading server state - CLEANUP: channel: fix comment in ci_putblk. - BUG/MINOR: server: Don't call fopen() with server-state filepath set to NULL - BUG/MINOR: cfgparse: do not mention "addr:port" as supported on proxy lines - BUG/MINOR: stats: revert the change on ST_CONVDONE - BUG/MEDIUM: config: don't pick unset values from last defaults section - CLEANUP: deinit: release global and per-proxy server-state variables on deinit - BUG/MINOR: server: Fix server-state-file-name directive - BUG/MINOR: backend: hold correctly lock when killing idle conn - BUG/MINOR: tools: Fix a memory leak on error path in parse_dotted_uints() - BUG/MINOR: server: re-align state file fields number - BUG/MEDIUM: mux-h1: Always set CS_FL_EOI for response in MSG_DONE state - BUG/MINOR: http-ana: Don't increment HTTP error counter on internal errors 2021/03/16 : 2.1r1 (1.0.0-234.476) 2021/02/05 : 2.1r1 (1.0.0-232.476) - BUG/MEDIUM: mux-h2: do not quit the demux loop before setting END_REACHED - BUG/MEDIUM: mux-h2: handle remaining read0 cases - BUILD: Makefile: move REGTESTST_TYPE default setting - BUG/MEDIUM: ssl/cli: abort ssl cert is freeing the old store - BUG/MINOR: ssl: init tmp chunk correctly in ssl_sock_load_sctl_from_file() - BUG/MINOR: xxhash: make sure armv6 uses memcpy() - BUG/MEDIUM: ssl: check a connection's status before computing a handshake - BUG/MINOR: stick-table: Always call smp_fetch_src() with a valid arg list - DOC: management: fix "show resolvers" alphabetical ordering - MINOR: contrib: Make the wireshark peers dissector compile for more distribs. - BUG/MINOR: config: fix leak on proxy.conn_src.bind_hdr_name 2021/02/01 : 2.1r1 (1.0.0-231.465) - BUG/MEDIUM: filters/htx: Fix data forwarding when payload length is unknown 2021/01/28 : 2.1r1 (1.0.0-231.464) - BUG/MEDIUM: stats: add missing INF_BUILD_INFO definition - MINOR: hapee: Update the list of backported/hapee patches - BUG/MINOR: dns: SRV records ignores duplicated AR records (v2) - BUILD/MINOR: lua: define _GNU_SOURCE for LLONG_MAX - BUG/MEDIUM: mux-h2: fix read0 handling on partial frames - BUG/MINOR: mworker: define _GNU_SOURCE for strsignal() - BUG/MINOR: mux_h2: missing space between "st" and ".flg" in the "show fd" helper - BUG/MINOR: peers: Wrong "new_conn" value for "show peers" CLI command. - BUG/MINOR: threads: Fixes the number of possible cpus report for Mac. - BUG/MINOR: init: Use a dynamic buffer to set HAPROXY_CFGFILES env variable - BUG/MINOR: init: enforce strict-limits when using master-worker - BUG/MINOR: sample: Memory leak of sample_expr structure in case of error - BUG/MINOR: sample: check alloc_trash_chunk return value in concat() 2021/01/08 : 2.1r1 (1.0.0-231.451) - BUG/MINOR: sample: fix concat() converter's corruption with non-string variables - DOC: Add maintainers for the Prometheus exporter - SCRIPTS: announce-release: fix typo in help message - DOC: fix some spelling issues over multiple files - MINOR: contrib/prometheus-exporter: export build_info - BUILD: Makefile: exclude broken tests by default - BUG/MINOR: srv: do not init address if backend is disabled - SCRIPTS: make announce release support preparing announces before tag exists - SCRIPTS: improve announce-release to support different tag and versions - BUG/MINOR: cfgparse: Fail if the strdup() for `rule->be.name` for `use_backend` fails - MINOR: atomic: don't use ; to separate instruction on aarch64. - BUILD: hpack: hpack-tbl-t.h uses VAR_ARRAY but does not include compiler.h - BUG/MEDIUM: mux_h2: Add missing braces in h2_snd_buf()around trace+wakeup - BUILD: plock: remove dead code that causes a warning in gcc 11 - CONTRIB: debug: address "poll" utility build on non-linux platforms - CONTRIB: halog: fix signed/unsigned build warnings on counts and timestamps - CONTRIB: halog: mark the has_zero* functions unused - CONTRIB: halog: fix build issue caused by %L printf format - BUG/MEDIUM: http-ana: Never for sending data in TUNNEL mode - BUG/MINOR: mux-h1: Don't set CS_FL_EOI too early for protocol upgrade requests - BUILD: Makefile: have "make clean" destroy .o/.a/.s in contrib subdirs as well - REGTESTS: make use of HAPROXY_ARGS and pass -dM by default - CLEANUP: contrib/prometheus-exporter: typo fixes for ssl reuse metric - CLEANUP: lua: Remove declaration of an inexistant function 2020/12/14 : 2.1r1 (1.0.0-230.427) - BUG/MEDIUM: lb-leastconn: Reposition a server using the right eweight - BUG/MINOR: tools: Reject size format not starting by a digit - BUG/MINOR: tools: make parse_time_err() more strict on the timer validity - DOC: email change of the DeviceAtlas maintainer - BUG/MEDIUM: spoa/python: Fixing references to None - BUG/MEDIUM: spoa/python: Fixing PyObject_Call positional arguments - BUG/MINOR: spoa/python: Cleanup ipaddress objects if initialization fails - BUG/MINOR: spoa/python: Cleanup references for failed Module Addobject operations - DOC: spoa/python: Fixing typos in comments - DOC: spoa/python: Rephrasing memory related error messages - DOC: spoa/python: Fixing typo in IP related error messages - BUG/MAJOR: spoa/python: Fixing return None - DOC/MINOR: Fix formatting in Management Guide - BUG/MINOR: lua: warn when registering action, conv, sf, cli or applet multiple times - MINOR: cli: add a function to look up a CLI service description - MINOR: actions: add a function returning a service pointer from its name - MINOR: actions: Export actions lookup functions - BUG/MINOR: lua: Some lua init operation are processed unsafe - BUG/MINOR: lua: Post init register function are not executed beyond the first one - BUG/MINOR: lua: lua-load doesn't check its parameters - BUG/MINOR: lua: missing "\n" in error message - MINOR: plock: use an ARMv8 instruction barrier for the pause instruction - DOC: config: Move req.hdrs and req.hdrs_bin in L7 samples fetches section - DOC: Clarify %HP description in log-format - BUG/MAJOR: peers: fix partial message decoding 2020/11/24 : 2.1r1 (1.0.0-229.402) - BUG/MAJOR: filters: Always keep all offsets up to date during data filtering 2020/11/20 : 2.1r1 (1.0.0-229.401) - MINOR: hapee: Update the list of backported/hapee patches - BUG/MEDIUM: http-ana: Don't eval http-after-response ruleset on empty messages 2020/11/18 : 2.1r1 (1.0.0-229.399) - BUG/MINOR: http-ana: Don't wait for the body of CONNECT requests - BUG/MEDIUM: filters: Forward all filtered data at the end of http filtering - BUILD: http-htx: fix build warning regarding long type in printf - MINOR: cfgparse: tighten the scope of newnameserver variable, free it on error. - MINOR: spoe: Don't close connection in sync mode on processing timeout - BUG/MAJOR: spoe: Be sure to remove all references on a released spoe applet - BUG/MINOR: http-fetch: Fix calls w/o parentheses of the cookie sample fetches - BUG/MINOR: http-fetch: Extract cookie value even when no cookie name - BUG/MEDIUM: peers: fix decoding of multi-byte length in stick-table messages - BUG/MINOR: peers: Missing TX cache entries reset. - BUG/MINOR: peers: Do not ignore a protocol error for dictionary entries. - BUG/MINOR: lua: set buffer size during map lookups - BUG/MINOR: pattern: a sample marked as const could be written - BUG/MINOR: http-htx: Just warn if payload of an errorfile doesn't match the C-L - MINOR: http-htx: Add understandable errors for the errorfiles parsing 2020/11/04 : 2.1r1 (1.0.0-228.384) - CLEANUP: mux-h2: Remove the h1 parser state from the h2 stream - BUG/MEDIUM: stick-table: limit the time spent purging old entries - BUG/MINOR: filters: Skip disabled proxies during startup only - BUG/MEDIUM: mux-pt: Release the tasklet during an HTTP upgrade - MINOR: server: Copy configuration file and line for server templates - BUG/MINOR: server: Set server without addr but with dns in RMAINT on startup - BUG/MINOR: proxy/server: Skip per-proxy/server post-check for disabled proxies - BUG/MEDIUM: filters: Don't try to init filters for disabled proxies - BUG/MINOR: cache: Inverted variables in http_calc_maxage function - BUG/MINOR: cache: Manage multiple values in cache-control header value - MINOR: ist: Add a case insensitive istmatch function - BUG/MINOR: lua: initialize sample before using it - BUG/MINOR: server: fix down_time report for stats - BUG/MINOR: server: fix srv downtime calcul on starting - BUG/MINOR: log: fix memory leak on logsrv parse error - BUG/MINOR: extcheck: add missing checks on extchk_setenv() - BUG/MAJOR: mux-h2: Don't try to send data if we know it is no longer possible - BUG/MINOR: http-ana: Don't send payload for internal responses to HEAD requests - BUG/MEDIUM: server: support changing the slowstart value from state-file - BUG/MINOR: queue: properly report redistributed connections - BUG/MEDIUM: ssl: OCSP must work with BoringSSL - BUG/MINOR: disable dynamic OCSP load with BoringSSL - BUILD: ssl: make BoringSSL use its own version numbers 2020/10/19 : 2.1r1 (1.0.0-228.361) - MINOR: hapee: Update the list of backported/hapee patches - MINOR: backend: Add sample fetches to get the server's weight - BUG/MINOR: peers: Possible unexpected peer seesion reset after collisions. - BUG/MEDIUM: lb: Always lock the server when calling server_{take,drop}_conn - BUG/MEDIUM: mux-h1: Get the session from the H1S when capturing bad messages - BUG/MEDIUM: spoe: Unset variable instead of set it if no data provided - BUG/MEDIUM: task: bound the number of tasks picked from the wait queue at once - MINOR: fd: report an error message when failing initial allocations - BUG/MINOR: mux-h2: do not stop outgoing connections on stopping - BUG/MINOR: init: only keep rlim_fd_cur if max is unlimited - BUG/MINOR: http-htx: Expect no body for 204/304 internal HTTP responses - BUG/MEDIUM: mux-h2: Don't handle pending read0 too early on streams - BUG/MEDIUM: mux-fcgi: Don't handle pending read0 too early on streams 2020/10/08 : 2.1r1 (1.0.0-226.348) - BUG/MINOR: mux-h1: Always set the session on frontend h1 stream - BUG/MINOR: peers: Inconsistency when dumping peer status codes. - MINOR: hlua: Display debug messages on stderr only in debug mode - BUG/MINOR: stats: fix validity of the json schema - MINOR: counters: fix a typo in comment - BUG/MEDIUM: queue: make pendconn_cond_unlink() really thread-safe - DOC: tcp-rules: Refresh details about L7 matching for tcp-request content rules - BUG/MINOR: Fix several leaks of 'log_tag' in init(). - BUILD: makefile: Fix building with closefrom() support enabled - MINOR: ssl: reach a ckch_store from a sni_ctx - BUG/MEDIUM: ssl: crt-list negative filters don't work 2020/10/02 : 2.1r1 (1.0.0-226.337) - MINOR: hapee: add a .hapee directory to list backporting notes - BUILD: makefile: add an EXTRAVERSION variable to ease local naming - REGTEST: make map_regm_with_backref require 1.7 - REGTEST: make abns_socket.vtc require 1.8 - REGTEST: fix host part in balance-uri-path-only.vtc - DOC: agent-check: fix typo in "fail" word expected reply - BUG/MEDIUM: listeners: do not pause foreign listeners - BUG/MINOR: config: Fix memory leak on config parse listen - DOC: spoa-server: fix false friends `actually` - REGTESTS: add a few load balancing tests - MINOR: backend: add a new "path-only" option to "balance uri" - MINOR: backend: make the "whole" option of balance uri take only one bit - BUG/MINOR: Fix memory leaks cfg_parse_peers - MINOR: h2/trace: also display the remaining frame length in traces - BUG/MEDIUM: h2: report frame bits only for handled types - BUG/MINOR: http-fetch: Don't set the sample type during the htx prefetch - BUG/MINOR: h2/trace: do not display "stream error" after a frame ACK - BUG/MINOR: server: report correct error message for invalid port on "socks4" - BUG/MINOR: ssl: verifyhost is case sensitive - BUG/MEDIUM: ssl: does not look for all SNIs before chosing a certificate - BUG/MEDIUM: http-ana: Don't wait to send 1xx responses received from servers 2020/09/18 : 2.1r1 (1.0.0-226.316) - MEDIUM: dns: implement synchronous send - BUG/MEDIUM: dns: Be sure to renew IP address for already known servers - BUG/MEDIUM: dns: Don't store additional records in a linked-list - CLEANUP: remove obsolete comments - CLEANUP: dns: remove 45 "return" statements from dns_validate_dns_response() - BUG/MEDIUM: dns: Consider the fact that dns answers are case-insensitive - BUG/MAJOR: dns: disabled servers through SRV records never recover - CLEANUP: dns: typo in reported error message - MINOR: arg: Use chunk_destroy() to release string arguments - BUG/MEDIUM: pattern: Renew the pattern expression revision when it is pruned - BUILD: threads: better workaround for late loading of libgcc_s - BUG/MEDIUM: mux-h1: always apply the timeout on half-closed connections - BUG/MINOR: auth: report valid crypto(3) support depending on build options - CLEANUP: Update .gitignore - MINOR: Commit .gitattributes - BUILD: thread: limit the libgcc_s workaround to glibc only - BUG/MINOR: threads: work around a libgcc_s issue with chrooting - BUG/MEDIUM: ssl: check OCSP calloc in ssl_sock_load_ocsp() - BUG/MEDIUM: doc: Fix replace-path action description - BUG/MINOR: startup: haproxy -s cause 100% cpu - BUG/MEDIUM: contrib/spoa-server: Fix ipv4_address used instead of ipv6_address - BUG/MINOR: contrib/spoa-server: Updating references to free in case of failure - BUG/MINOR: contrib/spoa-server: Do not free reference to NULL - BUG/MINOR: contrib/spoa-server: Ensure ip address references are freed - BUG/MAJOR: contrib/spoa-server: Fix unhandled python call leading to memory leak - DOC: cache: Use '<name>' instead of '<id>' in error message - MINOR: http-htx: Add an option to eval query-string when the path is replaced - BUG/MINOR: reload: do not fail when no socket is sent 2020/08/13 : 2.1r1 (1.0.0-226.288) - BUG/MEDIUM: htx: smp_prefetch_htx() must always validate the direction - BUG/MINOR: stats: use strncmp() instead of memcmp() on health states - BUG/MINOR: snapshots: leak of snapshots on deinit() - MEDIUM: lua: Don't filter exported fetches and converters - BUG/MINOR: lua: Duplicate lua strings in sample fetches/converters arg array - MINOR: hlua: Don't needlessly copy lua strings in trash during args validation - BUG/MINOR: lua: Check argument type to convert it to IP mask in arg validation - BUG/MINOR: lua: Check argument type to convert it to IPv4/IPv6 arg validation - BUG/MINOR: arg: Fix leaks during arguments validation for fetches/converters - BUG/MINOR: lua: Duplicate map name to load it when a new Map object is created - BUG/MINOR: converters: Store the sink in an arg pointer for debug() converter - MINOR: arg: Add an argument type to keep a reference on opaque data - BUG/MEDIUM: map/lua: Return an error if a map is loaded during runtime - BUG/MEDIUM: ssl: memory leak of ocsp data at SSL_CTX_free() - BUG/MINOR: ssl: fix memory leak at OCSP loading - BUG/MEDIUM: mux-h1: Refresh H1 connection timeout after a synchronous send 2020/07/31 : 2.1r1 (1.0.0-223.272) - SCRIPTS: git-show-backports: emit the shell command to backport a commit - SCRIPTS: git-show-backports: make -m most only show the left branch - BUG/MEDIUM: backend: always attach the transport before installing the mux - SCRIPTS: announce-release: add the link to the wiki in the announce messages - MINOR: stream-int: Be sure to have a mux to do sends and receives - MINOR: connection: Preinstall the mux for non-ssl connect - BUG/MINOR: tcp-rules: Preserve the right filter analyser on content eval abort - BUG/MAJOR: dns: don't treat Authority records as an error - BUG/MAJOR: dns: fix null pointer dereference in snr_update_srv_status - BUG/MINOR: tcp-rules: Set the inspect-delay when a tcp-response action yields - BUG/MEDIUM: dns: Don't yield in do-resolve action on a final evaluation - MEDIUM: lua: Add support for the Lua 5.4 - BUG/MINOR: debug: Don't dump the lua stack if it is not initialized - BUILD: tools: fix build with static only toolchains - BUG/MEDIUM: mux-h1: Disable the splicing when nothing is received - BUG/MEDIUM: mux-h1: Wakeup the H1C in h1_rcv_buf() if more data are expected - BUG/MINOR: mux-fcgi: Don't url-decode the QUERY_STRING parameter anymore - BUG/MEDIUM: dns: Release answer items when a DNS resolution is freed - BUG/MAJOR: dns: Make the do-resolve action thread-safe - BUG/MEDIUM: resolve: fix init resolving for ring and peers section. - BUG/MINOR: cfgparse: don't increment linenum on incomplete lines - BUILD: thread: add parenthesis around values of locking macros - BUILD: ebtree: fix build on libmusl after recent introduction of eb_memcmp() - BUG/MEDIUM: channel: Be aware of SHUTW_NOW flag when output data are peeked 2020/07/17 : 2.1r1 (1.0.0-223.248) - MINOR: ssl: add a new function ssl_sock_get_ssl_object() - MEDIUM: ssl: split ssl_sock_msgcbk() and use a new callback mechanism - MEDIUM: ssl: allow to register callbacks for SSL/TLS protocol messages 2020/07/16 : 2.1r1 (1.0.0-223.245) - BUG/MEDIUM: server: fix possibly uninitialized state file on close - BUG/MEDIUM: server: resolve state file handle leak on reload - BUG/MEDIUM: fcgi-app: fix memory leak in fcgi_flt_http_headers - BUG/MEDIUM: log: issue mixing sampled to not sampled log servers. - BUG/MINOR: mux-fcgi: Set flags on the right stream field for empty FCGI_STDOUT - BUG/MINOR: mux-fcgi: Set conn state to RECORD_P when skipping the record padding - BUG/MINOR: mux-fcgi: Handle empty STDERR record - BUG/MEDIUM: mux-h1: Continue to process request when switching in tunnel mode - CONTRIB: da: fix memory leak in dummy function da_atlas_open() - BUG/MEDIUM: lists: add missing store barrier in MT_LIST_ADD/MT_LIST_ADDQ - BUG/MEDIUM: lists: add missing store barrier on MT_LIST_BEHEAD() - BUG/MINOR: sample: Free str.area in smp_check_const_meth - BUG/MINOR: sample: Free str.area in smp_check_const_bool - DOC: configuration: remove obsolete mentions of H2 being converted to HTTP/1.x - MINOR: pools: increase MAX_BASE_POOLS to 64 - BUG/MINOR: threads: Don't forget to init each thread toremove_lock. - MINOR: http: Add support for http 413 status - BUG/MINOR: backend: Remove CO_FL_SESS_IDLE if a client remains on the last server - BUG/MEDIUM: connection: Continue to recv data to a pipe when the FD is not ready - MINOR: connection: move the CO_FL_WAIT_ROOM cleanup to the reader only - BUG/MEDIUM: mux-h1: Subscribe rather than waking up in h1_rcv_buf() - MINOR: mux-h1: Improve traces about the splicing - BUG/MEDIUM: mux-h1: Disable splicing for the conn-stream if read0 is received - BUG/MINOR: mux-h1: Disable splicing only if input data was processed - BUG/MINOR: mux-h1: Don't read data from a pipe if the mux is unable to receive - BUG/MINOR: mux-h1: Fix the splicing in TUNNEL mode - BUG/MINOR: http_act: don't check capture id in backend (2) - BUILD: haproxy: fix build error when RLIMIT_AS is not set - DOC: configuration: fix alphabetical ordering for tune.pool-{high,low}-fd-ratio - DOC: configuration: add missing index entries for tune.pool-{low,high}-fd-ratio - BUG/MINOR: proxy: always initialize the trash in show servers state - BUG/MINOR: proxy: fix dump_server_state()'s misuse of the trash - BUG/MEDIUM: pattern: Add a trailing \0 to match strings only if possible - DOC: ssl: add "allow-0rtt" and "ciphersuites" in crt-list - MINOR: cli: make "show sess" stop at the last known session - BUG/MEDIUM: fetch: Fix hdr_ip misparsing IPv4 addresses due to missing NUL - REGTEST: ssl: add some ssl_c_* sample fetches test - REGTEST: ssl: tests the ssl_f_* sample fetches - MINOR: spoe: Don't systematically create new applets if processing rate is low - BUG/MINOR: http_ana: clarify connection pointer check on L7 retry - BUG/MINOR: spoe: correction of setting bits for analyzer - REGTEST: Add a simple script to tests errorfile directives in proxy sections - BUG/MINOR: systemd: Wait for network to be online - MEDIUM: map: make the "clear map" operation yield - REGTEST: http-rules: test spaces in ACLs with master CLI - REGTEST: http-rules: test spaces in ACLs - BUG/MINOR: mworker/cli: fix semicolon escaping in master CLI - BUG/MINOR: mworker/cli: fix the escaping in the master CLI - BUG/MINOR: cli: allow space escaping on the CLI - BUG/MINOR: spoe: add missing key length check before checking key names - BUG/MEDIUM: ebtree: use a byte-per-byte memcmp() to compare memory blocks - BUG/MINOR: tcp-rules: tcp-response must check the buffer's fullness - BUG/MINOR: http: make smp_fetch_body() report that the contents may change - BUG/MEDIUM: ssl: crt-list must continue parsing on ERR_WARN - BUG/MINOR: ssl: fix ssl-{min,max}-ver with openssl < 1.1.0 - REGTESTS: Add missing OPENSSL to REQUIRE_OPTIONS for compression/lua_validation - REGTESTS: Add missing OPENSSL to REQUIRE_OPTIONS for lua/txn_get_priv - BUILD: make dladdr1 depend on glibc version and not __USE_GNU - BUG/MEDIUM: pattern: fix thread safety of pattern matching - BUG/MEDIUM: log: don't hold the log lock during writev() on a file descriptor 2020/06/30 : 2.1r1 (1.0.0-223.185) - MEDIUM: peers: add the "localpeer" global option - MINOR: peers: do not use localpeer as an array anymore 2020/06/08 : 2.1r1 (1.0.0-223.183) - BUG/MINOR: mworker: fix a memleak when execvp() failed - BUG/MINOR: ssl: fix a trash buffer leak in some error cases - BUG/MEDIUM: mworker: fix the reload with an -- option - BUG/MINOR: init: -S can have a parameter starting with a dash - BUG/MINOR: init: -x can have a parameter starting with a dash - BUG/MEDIUM: mworker: fix the copy of options in copy_argv() 2020/06/05 : 2.1r1 (1.0.0-223.177) - BUG/MEDIUM: contrib/prometheus-exporter: Properly set flags to dump metrics - BUG/MEDIUM: hlua: Lock pattern references to perform set/add/del operations - BUG/MEDIUM: lua: Reset analyse expiration timeout before executing a lua action - BUG/MINOR: peers: fix internal/network key type mapping. - SCRIPTS: publish-release: pass -n to gzip to remove timestamp - Revert "BUG/MEDIUM: connections: force connections cleanup on server changes" - BUG/MINOR: nameservers: fix error handling in parsing of resolv.conf - BUG/MINOR: lua: Add missing string length for lua sticktable lookup - BUG/MEDIUM: logs: fix trailing zeros on log message. - REGTESTS: checks: Fix tls_health_checks when IPv6 addresses are used - BUG/MINOR: logs: prevent double line returns in some events. - DOC: SPOE is no longer experimental - DOC/MINOR: halog: Add long help info for ic flag - DOC: retry-on can only be used with mode http 2020/05/26 : 2.1r1 (1.0.0-223.163) - BUG/MINOR: server: Fix server_finalize_init() to avoid unused variable - BUG/MINOR: checks: Respect check-ssl param when a port or an addr is specified - BUG/MEDIUM: ring: write-lock the ring while attaching/detaching - BUG/MAJOR: mux-fcgi: Stop sending loop if FCGI stream is blocked for any reason - BUG/MINOR: cache: Don't needlessly test "cache" keyword in parse_cache_flt() - BUG/MEDIUM: stream: Only allow L7 retries when using HTTP. - BUG/MEDIUM: streams: Remove SF_ADDR_SET if we're retrying due to L7 retry. - BUILD: select: only declare existing local labels to appease clang - BUG/MINOR: soft-stop: always wake up waiting threads on stopping - BUG/MINOR: pollers: remove uneeded free in global init - BUG/MINOR: pools: use %u not %d to report pool stats in "show pools" - BUG/MINOR: cfgparse: Abort parsing the current line if an invalid \x sequence is encountered - BUG/MEDIUM: http_ana: make the detection of NTLM variants safer - BUG/MINOR: http-ana: fix NTLM response parsing again - BUG/MINOR: config: Make use_backend and use-server post-parsing less obscur - BUG/MEDIUM: lua: Fix dumping of stick table entries for STD_T_DICT - BUG/MINOR: threads: fix multiple use of argument inside HA_ATOMIC_UPDATE_{MIN,MAX}() - BUG/MINOR: threads: fix multiple use of argument inside HA_ATOMIC_CAS() - BUG/MINOR: sample: Set the correct type when a binary is converted to a string - CLEANUP: connections: align function declaration - BUG/MEDIUM: ssl: fix the id length check within smp_fetch_ssl_fc_session_id() - BUG/MEDIUM: h1: Don't compare host and authority if only h1 headers are parsed - BUG/MEDIUM: connections: force connections cleanup on server changes - BUG/MEDIUM: mux-fcgi: Fix wrong test on FCGI_CF_KEEP_CONN in fcgi_detach() - BUG/MEDIUM: mux_fcgi: Free the FCGI connection at the end of fcgi_release() - BUG/MINOR: checks: Remove a warning about http health checks - BUG/MINOR: checks: Compute the right HTTP request length for HTTP health checks - BUG/MINOR: checks/server: use_ssl member must be signed - Revert "BUG/MINOR: connection: make sure to correctly tag local PROXY connections" - Revert "BUG/MINOR: connection: always send address-less LOCAL PROXY connections" 2020/05/19 : 2.1r1 (1.0.0-223.133) - MEDIUM: stats: Enable more accurate moving average calculation for stats - MINOR: stats: Expose native cum_req metric for a server - MINOR: stats: Prepare for more accurate moving averages 2020/05/06 : 2.1r1 (1.0.0-223.130) 2020/05/04 : 2.1r1 (1.0.0-222.130) - REGTEST: http-rules: Require PCRE or PCRE2 option to run map_redirect script - REGTEST: ssl: test the client certificate authentication - BUILD: Makefile: add linux-musl to TARGET - MINOR: stream: report the list of active filters on stream crashes - BUG/MEDIUM: shctx: bound the number of loops that can happen around the lock - BUG/MEDIUM: shctx: really check the lock's value while waiting - BUG/MINOR: debug: properly use long long instead of long for the thread ID - MINOR: threads: export the POSIX thread ID in panic dumps - BUG/MEDIUM: listener: mark the thread as not stuck inside the loop - BUG/MEDIUM: sample: make the CPU and latency sample fetches check for a stream - BUG/MEDIUM: http: the "unique-id" sample fetch could crash without a steeam - BUG/MEDIUM: http: the "http_first_req" sample fetch could crash without a steeam - BUG/MEDIUM: capture: capture.{req,res}.* crash without a stream - BUG/MEDIUM: capture: capture-req/capture-res converters crash without a stream - BUG/MINOR: mux-fcgi: Be sure to have a connection as session's origin to use it - BUG/MINOR: obj_type: Handle stream object in obj_base_ptr() function - BUG/MINOR: checks: chained expect will not properly wait for enough data - BUG/MEDIUM: server/checks: Init server check during config validity check - BUG/MINOR: checks: Respect the no-check-ssl option - MINOR: checks: Add a way to send custom headers and payload during http chekcs - BUG/MINOR: check: Update server address and port to execute an external check - MINOR: contrib: make the peers wireshark dissector a plugin - MEDIUM: memory: make pool_gc() run under thread isolation - DOC: option logasap does not depend on mode - BUG/MINOR: http: make url_decode() optionally convert '+' to SP - BUG/MINOR: tools: fix the i386 version of the div64_32 function - BUG/MEDIUM: http-ana: Handle NTLM messages correctly. - BUG/MINOR: ssl: default settings for ssl server options are not used - DOC: Improve documentation on http-request set-src - MINOR: version: Show uname output in display_version() - DOC: hashing: update link to hashing functions - BUG/MINOR: peers: Incomplete peers sections should be validated. - BUG/MINOR: connection: always send address-less LOCAL PROXY connections - BUG/MINOR: ssl: memleak of the struct cert_key_and_chain - BUG/MINOR: ssl/cli: memory leak in 'set ssl cert' - MINOR: ssl: improve the errors when a crt can't be open - BUG/MINOR: protocol_buffer: Wrong maximum shifting. 2020/04/21 : 2.1r1 (1.0.0-222.93) 2020/04/01 : 2.1r1 (1.0.0-221.93) - BUG/CRITICAL: hpack: never index a header into the headroom after wrapping - BUG/MINOR: http-ana: Reset request analysers on error when waiting for response - BUG/MINOR: http_ana: make sure redirect flags don't have overlapping bits - DOC: internals: Fix spelling errors in filters.txt - BUG/MINOR: stats: Fix color of draining servers on stats page - BUILD: ssl: only pass unsigned chars to isspace() - MINOR: listener: add so_name sample fetch - BUG/MINOR: peers: Use after free of "peers" section. - BUG/MINOR: peers: avoid an infinite loop with peers_fe is NULL - BUG/MINOR: peers: init bind_proc to 1 if it wasn't initialized - BUG/MINOR: haproxy/threads: close a possible race in soft-stop detection - REGTEST: increase timeouts on the seamless-reload test - REGTESTS: use "command -v" instead of "which" - BUG/MINOR: connections: Make sure we free the connection on failure. - MINOR: memory: Change the flush_lock to a spinlock, and don't get it in alloc. - BUG/MEDIUM: wdt: Don't ignore WDTSIG and DEBUGSIG in __signal_process_queue(). - MINOR: wdt: Move the definitions of WDTSIG and DEBUGSIG into types/signal.h. - DOC: assorted typo fixes in the documentation - BUG/MEDIUM: peers: resync ended with RESYNC_PARTIAL in wrong cases. - BUILD: makefile: fix expression again to detect ARM platform - BUILD: makefile: fix regex syntax in ARM platform detection - BUILD: on ARM, must be linked to libatomic. - DOC: correct typo in alert message about rspirep - DOC: proxy_protocol: Reserve TLV type 0x05 as PP2_TYPE_UNIQUE_ID - BUG/MINOR: haproxy/threads: try to make all threads leave together - BUG/MINOR: listener/mq: do not dispatch connections to remote threads when stopping - BUG/MINOR: haproxy: always initialize sleeping_thread_mask - BUG/MEDIUM: pools: Always update free_list in pool_gc(). - BUG/MEDIUM: random: align the state on 2*64 bits for ARM64 - MINOR: mt_lists: Appease gcc. - BUG/MEDIUM: mt_lists: Make sure we set the deleted element to NULL; - BUILD: wdt: only test for SI_TKILL when compiled with thread support - DOC: ssl: clarify security implications of TLS tickets - DOC: assorted typo fixes in the documentation - DOC: improve description of no-tls-tickets - DOC: fix typo about no-tls-tickets - BUG/MINOR: rules: Increment be_counters if backend is assigned for a silent-drop - BUG/MINOR: rules: Preserve FLT_END analyzers on silent-drop action - BUG/MINOR: http-rules: Fix a typo in the reject action function - BUG/MINOR: http-rules: Preserve FLT_END analyzers on reject action - BUG/MINOR: lua: Ignore the reserve to know if a channel is full or not - BUG/MINOR: http-ana: Reset request analysers on a response side error - BUG/MEDIUM: compression/filters: Fix loop on HTX blocks compressing the payload - BUG/MEDIUM: cache/filters: Fix loop on HTX blocks caching the response payload - MINOR: htx: Add a function to return a block at a specific offset - BUG/MINOR: filters: Forward everything if no data filters are called - BUG/MINOR: filters: Use filter offset to decude the amount of forwarded data - REGTEST: make the PROXY TLV validation depend on version 2.2 - BUG/MAJOR: proxy_protocol: Properly validate TLV lengths - BUG/MINOR: init: make the automatic maxconn consider the max of soft/hard limits - DOC: assorted typo fixes in the documentation and Makefile - DOC: configuration.txt: fix various typos - BUG/MINOR: pattern: Do not pass len = 0 to calloc() - OPTIM: startup: fast unique_id allocation for acl. - DOC: fix incorrect indentation of http_auth_* 2020/03/31 : 2.1r1 (1.0.0-221.38) - BUG/MEDIUM: dns: improper parsing of aditional records 2020/03/27 : 2.1r1 (1.0.0-220.37) 2020/03/18 : 2.1r1 (1.0.0-219.37) - Revert "BUG/MEDIUM: random: implement a thread-safe and process-safe PRNG" - BUG/MAJOR: list: fix invalid element address calculation - BUG/MINOR: checks/threads: use ha_random() and not rand() - MINOR: backend: use a single call to ha_random32() for the random LB algo - BUG/MEDIUM: random: implement a thread-safe and process-safe PRNG - BUG/MEDIUM: random: implement a thread-safe and process-safe PRNG - MINOR: tools: add 64-bit rotate operators - BUG/MEDIUM: random: initialize the random pool a bit better - MINOR: contrib/prometheus-exporter: Add the last heathcheck duration metric - BUG/MINOR: http-htx: Do case-insensive comparisons on Host header name - BUG/MINOR: dns: ignore trailing dot - BUG/MINOR: sample: Make sure to return stable IDs in the unique-id fetch - BUG/MINOR: h2: reject again empty :path pseudo-headers - BUILD: ebtree: improve architecture-specific alignment - MINOR: compiler: add new alignment macros - BUG/MINOR: connection: make sure to correctly tag local PROXY connections - BUG/MEDIUM: ssl: fix several bad pointer aliases in a few sample fetch functions - BUG/MINOR: sample: fix the json converter's endian-sensitivity - CLEANUP: cfgparse: Fix type of second calloc() parameter - BUILD: fix recent build failure on unaligned archs - BUG/MEDIUM: ebtree: don't set attribute packed without unaligned access support - MINOR: compiler: move CPU capabilities definition from config.h and complete them - BUG/MEDIUM: shctx: make sure to keep all blocks aligned - BUG/MINOR: http: http-request replace-path duplicates the query string - MINOR: ist: add an iststop() function - BUG/MAJOR: http-ana: Always abort the request when a tarpit is triggered - MINOR: http-ana: Match on the path if the monitor-uri starts by a / - BUG/MINOR: http-ana: Matching on monitor-uri should be case-sensitive - BUG/MINOR: http-htx: Don't return error if authority is updated without changes - BUG/MINOR: filters: Count HTTP headers as filtered data but don't forward them - MINOR: filters: Forward data only if the last filter forwards something - MINOR: http-htx: Add a function to retrieve the headers size of an HTX message - SCRIPTS: announce-release: use mutt -H instead of -i to include the draft - MINOR: mux-fcgi: Make the capture of the path-info optional in pathinfo regex - BUG/MINOR: mux-fcgi: Forbid special characters when matching PATH_INFO param - BUG/MEDIUM: muxes: Use the right argument when calling the destroy method. - BUG/MINOR: namespace: avoid closing fd when socket failed in my_socketat 2020/03/06 : 2.1r1 (1.0.0-217.0)

HAPEE-LB 2.1r1 – Changelog