HAProxy known bugs for version v3.0.20 (maintenance branch 3.0) :  108 

This version (3.0.20) is a release belonging to maintenance branch 3.0 whose latest version is 3.0.23. If your version is not the last one in the maintenance branch, you are missing fixes for known bugs, and by not updating you are needlessly taking the responsibility for the risk of unexpected service outages and exposing your web site to possible security issues.

The HAProxy development team takes a great care of maintaining stable versions so that all users can apply bug fixes without having to take the risk of upgrading to a new branch. In turn users are expected to apply the fixes when the development team estimates that they were worth being backported to stable branches.

Quick links

Other versions in the same branch

This branch contains the following releases :

DateVersionComment
2026-05-113.0.23 ⇐ last
2026-05-063.0.22 
2026-04-303.0.21 
2026-04-233.0.20 ⇐ yours
2026-03-193.0.19 
2026-03-093.0.18 
2026-02-193.0.17 
2026-02-123.0.16 
2026-01-293.0.15 
2025-12-223.0.14 
2025-12-173.0.13 
2025-10-033.0.12 
2025-06-023.0.11 
2025-04-223.0.10 
2025-03-203.0.9 
2025-01-293.0.8 
2024-12-123.0.7 
2024-11-073.0.6 
2024-09-193.0.5 
2024-09-033.0.4 
2024-07-113.0.3 
2024-06-143.0.2 
2024-06-103.0.1 
2024-05-293.0.0 

Known bugs affecting this version, and already fixed in the maintenance branch

These fixes have already been queued for a more recent 3.0 version. Some of them might have already been released in a more recent version than yours, and other ones might still be pending in the maintenance branch for a future release. The list may be empty if you're already on the latest version and no new fix was backported.

Bugs are almost always tagged with a severity (some people forget the severity tag when the bug is minor). The following severities are used :

Total known bugs in this version by category :

TotalCRITICALMAJORMEDIUMMINOR
108 0 4 37 67

Click on the subjects below to get the full description of the bug :

Merge dateSubject - Severity (minor, medium, major, critical)
2026-06-01BUG/MEDIUM: mux-h1: Dup connection/upgrade value to parse it when making headers
2026-06-01BUG/MINOR: cache: Fix copy of value when parsing maxage
2026-06-01BUG/MEDIUM: resolvers: Wait a bit before calling the xprt prepare_srv
2026-06-01BUG/MINOR: cache: fix cache tree iteration
2026-06-01BUG/MEDIUM: quic: reset cwnd in slow_start on persistent congestion (cubic)
2026-06-01BUG/MINOR: quic: fix ack range node pool_free call passing wrong pointer type
2026-06-01BUG/MINOR: mux-h2: Count padding for connection flow control on error path
2026-06-01BUG/MEDIUM: quic: handle ECONNREFUSED on RX side
2026-06-01BUG/MINOR: qpack: fix huff_dec() error handling in qpack_decode_fs()
2026-06-01BUG/MINOR: qpack: fix sign bit mask in qpack_decode_fs_pfx()
2026-06-01BUG/MINOR: qpack: fix potential null-pointer dereference in qpack_dht_insert()
2026-06-01BUG/MINOR: qpack: Fix index calculation in debug functions
2026-06-01Revert "BUG/MEDIUM: dns: fix long loops in additional records parse on name failure"
2026-06-01BUG/MINOR: ssl-gencert: validate SNI characters to prevent SAN certificate injection
2026-06-01BUG/MINOR: tcpcheck: Check LDAP response to not read more data than available
2026-06-01BUG/MINOR: mux-fcgi: Use relative offset to compute contig data in demux buf
2026-06-01BUG/MEDIUM: h1-htx: Sanitize parsing to properly handle upgrade requests
2026-06-01BUG/MEDIUM: mux-fcgi: reject stream ID 0 for application records
2026-06-01BUG/MINOR: quic: reject packet too short for HP decryption
2026-06-01BUG/MINOR: hlua: prevent Lua from passing CR/LF/NUL in HTTP headers
2026-06-01BUG/MEDIUM: auth: fix unconfigured password NULL deref
2026-06-01BUG/MINOR: h3: reject client CANCEL_PUSH frame
2026-06-01BUG/MEDIUM: h3: reject client push stream
2026-06-01BUG/MINOR: addons/51d: NUL-terminate headers before passing them to Trie API
2026-06-01BUG/MINOR: resolvers: switch to a better PRNG for query IDs
2026-06-01BUG/MINOR: ssl-hello: make use of the null-terminated servername
2026-06-01BUG/MINOR: payload: fix the handshake length bounds check smp_client_hello_parse()
2026-06-01BUG/MINOR: base64: return empty string for empty input in base64dec()
2026-06-01BUG/MINOR: http-ext: always check remaining data when reading rfc7239 nodeport
2026-06-01BUG/MINOR: http-fetch: check against the whole token in get_http_auth()
2026-06-01BUG/MINOR: resolvers: relax size checks in authority record parsing
2026-06-01BUG/MEDIUM: cache: always verify the primary hash in get_secondary_entry()
2026-06-01BUG/MINOR: sample: limit the be2hex converter's chunk size
2026-06-01BUG/MINOR: init: use more than ha_random64() for the cluster secret
2026-06-01BUG/MINOR: dict: fix refcount race on insert collision
2026-06-01BUG/MINOR: log: look for the end of priority before the end of the buffer
2026-06-01BUG/MINOR: mux-h2: validate HEADERS frame length before reading stream dep
2026-06-01BUG/MINOR: resolvers: fix risk of appending garbage past the domain name
2026-06-01BUG/MINOR: resolvers: fix room for trailing zero in resolv_dn_label_to_str()
2026-06-01BUG/MEDIUM: cache: fix a refcount leak for missed secondary entries
2026-06-01BUG/MEDIUM: log-forward: make sure the month is unsigned
2026-06-01BUG/MEDIUM: hlua: Fix integer underflow when receiving line from lua cosocket
2026-06-01BUG/MINOR: tcpchecks: Limit parsing of agent-check reply to the buffer
2026-06-01BUG/MEDIUM: dict: hold lock while decrementing refcount in dict_entry_unref
2026-06-01BUG/MINOR: quic: fix ODCID lookup from derived value
2026-06-01BUG/MEDIUM: ssl-gencert: Unlock LRU cache if failing to generate certificate
2026-06-01BUG/MEDIUM: resolvers: Fix test on dn label size in resolv_dn_label_to_str()
2026-06-01BUG/MEDIUM: applet: Properly handle receives of size 0
2026-06-01BUG/MINOR: ocsp: Manage date too far away in the future
2026-05-21BUG/MINOR: backend: fix balance hash calculation when using hash-type none
2026-05-21BUG/MINOR: h1: Don't mask websocket protocol if multiple protocols used
2026-05-21BUG/MEDIUM: h1: Skip all h2c values from Upgrade headers during parsing
2026-05-21BUG/MINOR: httpclient-cli: Destroy http-client context if failing to start it
2026-05-21BUG/MINOR: jwt: fix possible memory leak in convert_ecdsa_sig() error path
2026-05-21BUG/MINOR: check: properly report errno in chk_report_conn_err()
2026-05-21BUG/MINOR: resolvers: fix leaked dgram and dns_ring struct in parse_resolve_conf()
2026-05-21BUG/MINOR: resolvers: report the expression error in the do-resolve() action parser
2026-05-21BUG/MINOR: dns: fix dangling dgram pointer on dns_dgram_init() failure path
2026-05-21BUG/MEDIUM: server/cli: unlock server lock on failure in cli_parse_set_server
2026-05-21BUG/MEDIUM: dns: fix memory leak of sockaddr in dns_session_init() error path
2026-05-21BUG/MEDIUM: resolvers: fix name compression pointer validation in resolv_read_name()
2026-05-21BUG/MEDIUM: dns: fix long loops in additional records parse on name failure
2026-05-21BUG/MINOR: config/dns: properly fail on duplicate nameserver name detection
2026-05-21BUG/MINOR: backend: correct parameter value validation in get_server_ph_post()
2026-05-21BUG/MEDIUM: applet: Fix transfer of HTX data to the applet
2026-05-21BUG/MEDIUM: dict: hold read lock while incrementing refcount in dict_insert
2026-05-21BUG/MEDIUM: mux_quic: adjust qcc_is_dead() to account detached streams
2026-05-11BUG/MEDIUM: tasks: Keep the TASK_RUNNING flag until queued
2026-05-11BUG/MINOR: cfgparse-listen: do not emit extraneous line in rule order warnings
2026-05-07BUG/MEDIUM: stick-table: properly check permissions on CLI's set/clear cmd
2026-05-07BUG/MEDIUM: mux-h2: fix the detection of the ext connect support
2026-05-07Revert "BUG/MINOR: mux-h2: condition the processing of 8441 extension to global setting"
2026-05-07Revert "BUG/MEDIUM: cli: fix master CLI connection slot leak on client disconnect"
2026-05-07BUG/MEDIUM: mux-h2: Properly consume padding for DATA frames
2026-05-06BUG/MEDIUM: h1: Enforce the authority validation during H1 request parsing
2026-05-06BUG/MAJOR: http: forbid comma character in authority value
2026-05-06BUG/MINOR: tools: read_line_to_trash() handle empty files without \n
2026-05-06BUG/MEDIUM: h1_htx: Remove reverved block on error during contig chunks parsing
2026-05-06BUG/MINOR: http-fetch: Fix http_auth_bearer() when custom header is used
2026-05-06BUG/MINOR: h2: only accept :protocol with extended CONNECT
2026-05-06BUG/MINOR: mux-h2: condition the processing of 8441 extension to global setting
2026-05-06BUG/MINOR: h2: add decoding for :protocol in traces
2026-05-04BUG/MINOR: mworker/cli: check ci_insert() return value in pcli_parse_request()
2026-05-04BUG/MINOR: resolvers: Free opts on parse error in resolv_parse_do_resolve()
2026-05-04BUG/MINOR: resolvers: Free new requester on error when linking a resolution
2026-05-04BUG/MINOR: tcpcheck: Properly report error for http health-checks
2026-05-04BUG/MAJOR: mux-h2: preset MSGF_BODY_CL on H2_SF_DATA_CLEN in h2c_dec_hdrs()
2026-05-04BUG/MEDIUM: mux-h2: fix the body_len to check when parsing request trailers
2026-05-04BUG/MINOR: pattern: release the reference on failure to load from file
2026-05-04BUG/MINOR: map: do not leak a map descriptor on load error
2026-05-04BUG/MINOR: acl: fix a possible arg corruption in smp_fetch_acl_parse()
2026-05-04BUG/MEDIUM: cli: fix master CLI connection slot leak on client disconnect
2026-05-04BUG/MINOR: hpack: validate idx > 0 in hpack_valid_idx()
2026-05-04BUG/MINOR: vars: only print first invalid char in fill_desc()
2026-05-04BUG/MINOR: vars: don't store the variable twice with set-var-fmt
2026-05-04BUG/MINOR: vars: make parse_store() return error on var_set() failure
2026-04-29BUG/MINOR: http-htx: Don't normalize emtpy path for OPTIONS requests
2026-04-29BUG/MEDIUM: mux-fcgi: Properly handle full buffer for FCGI_PARAM record
2026-04-29BUG/MINOR: payload: prevent integer overflow in distcc token parsing
2026-04-29BUG/MINOR: fix various typos and spelling mistakes in user-visible messages
2026-04-29BUG/MEDIUM: tasks: Do not loop in task_schedule() if a task is running
2026-04-29BUG/MAJOR: mux-h1: Deal with true 64-bits integer to emit chunks size
2026-04-29BUG/MEDIUM: http-htx: Loop on full host value during scheme based normalization
2026-04-29BUG/MEDIUM: http-htx: Don't use data from HTX message to update authority
2026-04-29BUG/MAJOR: http-htx: Store new host in a chunk for scheme-based normalization
2026-04-29BUG/MEDIUM: mux_h1: fix stack buffer overflow in h1_append_chunk_size()
2026-04-29BUG/MINOR: peers: fix wrong flag reported twice for dump_flags
2026-04-29BUG/MINOR: peers: fix logical "and" when checking for local in PEER_APP_ST_STARTING
2026-04-29BUG/MINOR: sample: fix memory leak in check_when_cond() when ACL is not found
2026-04-29BUG/MINOR: tools: fix memory leak in indent_msg() on out of memory
2026-04-29BUG/MINOR: tools: my_memspn/my_memcspn wrong cast causing incorrect byte reading

Back to the list of branches and versions
Back to the HAProxy page