HAProxy known bugs for version v1.6.10 (maintenance branch 1.6) :  248 

This version (1.6.10) is a release belonging to maintenance branch 1.6 whose latest version is 1.6.16. 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
2021-03-191.6.16 ⇐ last
2019-10-251.6.15 
2018-01-021.6.14 
2017-06-181.6.13 
2017-04-041.6.12 
2016-12-251.6.11 
2016-11-201.6.10 ⇐ yours
2016-08-301.6.9 
2016-08-141.6.8 
2016-07-131.6.7 
2016-06-261.6.6 
2016-05-101.6.5 
2016-03-141.6.4 
2015-12-271.6.3 
2015-11-031.6.2 
2015-10-201.6.1 
2015-10-131.6.0 

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

These fixes have already been queued for a more recent 1.6 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
248 0 28 93 127

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

Merge dateSubject - Severity (minor, medium, major, critical)
2021-03-04BUG/MINOR: connection: Use the client's dst family for adressless servers
2021-03-04BUG/MINOR: http-ana: Only consider dst address to process originalto option
2021-03-04BUG/MINOR: server: Init params before parsing a new server-state line
2021-03-04BUG/MINOR: sample: Always consider zero size string samples as unsafe
2021-03-04BUG/MINOR: checks: properly handle wrapping time in __health_adjust()
2021-03-04BUG/MINOR: server: Don't call fopen() with server-state filepath set to NULL
2021-03-04BUG/MEDIUM: config: don't pick unset values from last defaults section
2021-03-04BUG/MINOR: server: Fix server-state-file-name directive
2021-03-04BUG/MINOR: xxhash: make sure armv6 uses memcpy()
2021-03-04BUG/MINOR: tools: Reject size format not starting by a digit
2021-03-04BUG/MINOR: tools: make parse_time_err() more strict on the timer validity
2021-03-04BUG/MINOR: http-fetch: Fix calls w/o parentheses of the cookie sample fetches
2021-03-04BUG/MINOR: http-fetch: Extract cookie value even when no cookie name
2021-03-04BUG/MINOR: config: Fix memory leak on config parse listen
2021-03-04BUG/MINOR: ssl: verifyhost is case sensitive
2021-03-04BUG/MEDIUM: pattern: fix memory leak in regex pattern functions
2020-09-11BUG/MEDIUM: pattern: Renew the pattern expression revision when it is pruned
2020-09-11BUG/MINOR: lua: Check argument type to convert it to IP mask in arg validation
2020-09-11BUG/MINOR: lua: Check argument type to convert it to IPv4/IPv6 arg validation
2020-09-11BUG/MEDIUM: map/lua: Return an error if a map is loaded during runtime
2020-09-11BUG/MINOR: tcp-rules: Set the inspect-delay when a tcp-response action yields
2020-09-11BUG/MEDIUM: channel: Be aware of SHUTW_NOW flag when output data are peeked
2020-09-11BUG/MINOR: http_act: don't check capture id in backend (2)
2020-09-11BUG/MEDIUM: pattern: Add a trailing \0 to match strings only if possible
2020-09-11BUG/MEDIUM: fetch: Fix hdr_ip misparsing IPv4 addresses due to missing NUL
2020-09-11BUG/MEDIUM: ebtree: use a byte-per-byte memcmp() to compare memory blocks
2020-09-11BUG/MEDIUM: lua: Reset analyse expiration timeout before executing a lua action
2020-09-11BUG/MEDIUM: shctx: bound the number of loops that can happen around the lock
2020-09-11BUG/MEDIUM: shctx: really check the lock's value while waiting
2020-09-11BUG/MEDIUM: http: the "http_first_req" sample fetch could crash without a steeam
2020-09-11BUG/MEDIUM: capture: capture.{req,res}.* crash without a stream
2020-09-11BUG/MEDIUM: capture: capture-req/capture-res converters crash without a stream
2020-09-11BUG/MINOR: rules: Increment be_counters if backend is assigned for a silent-drop
2020-09-11BUG/MAJOR: proxy_protocol: Properly validate TLV lengths
2020-09-11BUG/MAJOR: list: fix invalid element address calculation
2020-09-11BUG/MINOR: sample: fix the json converter's endian-sensitivity
2020-09-11BUG/MEDIUM: ebtree: don't set attribute packed without unaligned access support
2020-09-11BUG/MINOR: namespace: avoid closing fd when socket failed in my_socketat
2020-02-11BUG/MINOR: dns: allow 63 char in hostname
2020-02-11BUG/MINOR: unix: better catch situations where the unix socket path length is close to the limit
2020-02-04BUG/MINOR: http_act: don't check capture id in backend
2020-02-04BUG/MINOR: stick-table: Use MAX_SESS_STKCTR as the max track ID during parsing
2020-02-04BUG/MINOR: http-rules: Remove buggy deinit functions for HTTP rules
2020-02-04BUG/MINOR: dns: Make dns_query_id_seed unsigned
2020-02-04BUG/MINOR: pattern: handle errors from fgets when trying to load patterns
2020-02-04BUG/MINOR: stream: don't mistake match rules for store-request rules
2020-02-04BUG/MAJOR: hashes: fix the signedness of the hash inputs
2020-02-04BUG/MINOR: sample: fix the closing bracket and LF in the debug converter
2019-12-11BUG/MEDIUM: proto_udp/threads: recv() and send() must not be exclusive.
2019-12-11BUG/MAJOR: dns: add minimalist error processing on the Rx path
2019-12-11BUG/MINOR: listener: also clear the error flag on a paused listener
2019-12-11BUG/MINOR: ssl: fix crt-list neg filter for openssl < 1.1.1
2019-12-11BUG/MEDIUM: stream: Be sure to release allocated captures for TCP streams
2019-12-11BUG/MINOR: config: Update cookie domain warn to RFC6265
2019-10-23BUG/MINOR: stick-table: fix an incorrect 32 to 64 bit key conversion
2019-10-22BUG/MEDIUM: vars: make sure the scope is always valid when accessing vars
2019-10-22BUG/MEDIUM: da: cast the chunk to string.
2019-10-22BUG/MINOR: sample: Make the `field` converter compatible with `-m found`
2019-10-22BUG/MINOR: ssl: abort on sni allocation failure
2019-10-22BUG/MEDIUM: namespace: close open namespaces during soft shutdown
2019-10-22BUG/MEDIUM: lb-chash: Ensure the tree integrity when server weight is increased
2019-10-22BUG/MEDIUM: lb-chash: Fix the realloc() when the number of nodes is increased
2019-10-22BUG/MINOR: lua: Properly initialize the buffer's fields for string samples in hlua_lua2(smp|arg)
2019-10-22BUG/MINOR: lua: Set right direction and flags on new HTTP objects
2019-10-22BUG/MINOR: hlua: Only execute functions of HTTP class if the txn is HTTP ready
2019-10-22BUG/MEDIUM: hlua: Check the calling direction in lua functions of the HTTP class
2019-10-22BUG/MEDIUM: compression: Set Vary: Accept-Encoding for compressed responses
2019-10-22BUG/MINOR: acl: Fix memory leaks when an ACL expression is parsed
2019-10-22BUG/MAJOR: map/acl: real fix segfault during show map/acl on CLI
2019-10-22BUG/MINOR: acl: properly detect pattern type SMP_T_ADDR
2019-10-22BUG/MEDIUM: maps: only try to parse the default value when it's present
2019-10-22BUG/MEDIUM: pattern: assign pattern IDs after checking the config validity
2019-10-22BUG/MEDIUM: tcp-check: unbreak multiple connect rules again
2019-10-22BUG/MAJOR: checks: segfault during tcpcheck_main
2019-10-22BUG/MEDIUM: http: also reject messages where "chunked" is missing from transfer-enoding
2019-10-22BUG/MEDIUM: proto-http: Always start the parsing if there is no outgoing data
2019-10-22BUG/MINOR: http-rules: mention "deny_status" for "deny" in the error message
2019-10-22BUG/MINOR: http: Call stream_inc_be_http_req_ctr() only one time per request
2019-10-22BUG/MINOR: http/counters: fix missing increment of fe->srv_aborts
2019-10-22BUG/MAJOR: stats: Fix how huge POST data are read from the channel
2019-10-22BUG/MEDIUM: 51d: fix possible segfault on deinit_51degrees()
2019-10-22BUG/MAJOR: stream: avoid double free on unique_id
2019-10-22BUG/MINOR: config: make sure to count the error on incorrect track-sc/stick rules
2019-10-22BUG/MAJOR: config: verify that targets of track-sc and stick rules are present
2019-10-22BUG/MEDIUM: stream: Don't forget to free s->unique_id in stream_free().
2019-10-22BUG/MINOR: stream: don't close the front connection when facing a backend error
2019-10-22BUG/MINOR: deinit: tcp_rep.inspect_rules not deinit, add to deinit
2019-10-22BUG/MINOR: check: Wake the check task if the check is finished in wake_srv_chk()
2019-10-22BUG/MINOR: server: don't always trust srv_check_health when loading a server state
2019-10-22BUG/MINOR: stick_table: Prevent conn_cur from underflowing
2019-10-22BUG/MINOR: backend: BE_LB_LKUP_CHTREE is a value, not a bit
2019-10-22BUG/MINOR: backend: balance uri specific options were lost across defaults
2019-10-22BUG/MINOR: backend: don't use url_param_name as a hint for BE_LB_ALGO_PH
2019-10-22BUG/MAJOR: stream-int: Update the stream expiration date in stream_int_notify()
2019-10-22BUG/MEDIUM: sample: Don't treat SMP_T_METH as SMP_T_STR.
2019-10-22BUG/MINOR: config: Copy default error messages when parsing of a backend starts
2019-10-22BUG/MEDIUM: buffers: Make sure we don't wrap in buffer_insert_line2/replace2.
2019-10-22BUG/MINOR: tools: fix set_net_port() / set_host_port() on IPv4
2019-10-22BUG/MEDIUM: hlua: Make sure we drain the output buffer when done.
2019-10-22BUG/MEDIUM: lua: reset lua transaction between http requests
2019-10-22BUG/MEDIUM: queue: prevent a backup server from draining the proxy's connections
2019-10-22BUG/MEDIUM: lua: socket timeouts are not applied
2019-10-22BUG/MINOR: lua: Bad HTTP client request duration.
2019-10-22BUG/MEDIUM: lua: possible CLOSE-WAIT state with '\n' headers
2019-10-22BUG/MAJOR: map: fix a segfault when using http-request set-map
2019-10-22BUG/MINOR: config: stick-table is not supported in defaults section
2019-10-22BUG/MEDIUM: stats: don't ask for more data as long as we're responding
2019-10-22BUG/MEDIUM: stream-int: don't immediately enable reading when the buffer was reportedly full
2019-10-22BUG/MINOR: lua: Segfaults with wrong usage of types.
2019-10-22BUG/MEDIUM: lua/socket: Buffer error, may segfault
2019-10-22BUG/MEDIUM: lua/socket: Sheduling error on write: may dead-lock
2019-10-22BUG/MEDIUM: lua/socket: Notification error
2019-10-22BUG/MAJOR: lua: Dead lock with sockets
2019-10-22BUG/MEDIUM: lua/socket: wrong scheduling for sockets
2019-10-22BUG/MEDIUM: lua/socket: Length required read doesn't work
2019-10-22BUG/MINOR: ssl/lua: prevent lua from affecting automatic maxconn computation
2019-10-22BUG/MINOR: lua: Socket.send threw runtime error: 'close' needs 1 arguments.
2019-10-22BUG/MINOR: map: correctly track reference to the last ref_elt being dumped
2019-10-22BUG/MINOR: checks: Fix check->health computation for flapping servers
2019-10-22BUG/MINOR: config: disable http-reuse on TCP proxies
2019-10-22BUG/MAJOR: channel: Fix crash when trying to read from a closed socket
2019-10-22BUILD/BUG: enable -fno-strict-overflow by default
2019-10-22BUG/MINOR: http: Return an error in proxy mode when url2sa fails
2019-10-22BUG/MINOR: lua funtion hlua_socket_settimeout don't check negative values
2019-10-22BUG/MINOR: lua: the function returns anything
2019-10-22BUG/MEDIUM: tcp-check: single connect rule can't detect DOWN servers
2019-10-22BUG/MINOR: lua: return bad error messages
2019-10-22BUG/MINOR: force-persist and ignore-persist only apply to backends
2019-10-22BUG/MEDIUM: buffer: Fix the wrapping case in bo_putblk
2019-10-22BUG/MINOR: config: don't emit a warning when global stats is incompletely configured
2019-10-22BUG/MEDIUM: standard: Fix memory leak in str2ip2()
2019-10-22BUG/MINOR: sample: Fix output type of c_ipv62ip
2019-10-22BUG/MINOR: poll: too large size allocation for FD events
2019-10-22BUG/MEDIUM: stream: properly handle client aborts during redispatch
2019-10-22BUG/MINOR: lua: Fix return value of Socket.settimeout
2019-10-22BUG/MINOR: lua: Fix default value for pattern in Socket.receive
2018-01-02BUG/MEDIUM: http: don't automatically forward request close
2018-01-02BUG/MEDIUM: lua: fix crash when using bogus mode in register_service()
2018-01-02BUG/MEDIUM: peers: set NOLINGER on the outgoing stream interface
2018-01-02BUG/MEDIUM: kqueue: Don't bother closing the kqueue after fork.
2018-01-02BUG/MINOR: http: properly detect max-age=0 and s-maxage=0 in responses
2018-01-02BUG/MINOR: listener: Allow multiple "process" options on "bind" lines
2018-01-02BUG/MINOR: Use crt_base instead of ca_base when crt is parsed on a server line
2018-01-02BUG/MEDIUM: deinit: correctly deinitialize the proxy and global listener tasks
2018-01-02BUG/MAJOR: stream: ensure analysers are always called upon close
2018-01-02BUG/MEDIUM: stream: don't ignore res.analyse_exp anymore
2018-01-02BUG/MINOR: mailers: Fix a memory leak when email alerts are released
2018-01-02BUG/MEDIUM: prevent buffers being overwritten during build_logline() execution
2018-01-02BUG/MINOR: ssl: OCSP_single_get0_status can return -1
2018-01-02BUG/MINOR: ssl: ocsp response with 'revoked' status is correct
2018-01-02BUG/MINOR: stats: Clear a bit more counters with in cli_parse_clear_counters().
2018-01-02BUG/MEDIUM: ssl: fix OCSP expiry calculation
2018-01-02BUG/MAJOR: stream-int: don't re-arm recv if send fails
2018-01-02BUG/MEDIUM: http: Return an error when url_dec sample converter failed
2018-01-02BUG/MINOR: tcp-check: don't initialize then break a connection starting with a comment
2018-01-02BUG/MEDIUM: tcp-check: don't call tcpcheck_main() from the I/O handlers!
2018-01-02BUG/MINOR: tcp-check: don't quit with pending data in the send buffer
2018-01-02BUG/MEDIUM: tcp-check: properly indicate polling state before performing I/O
2018-01-02BUG/MINOR: contrib/halog: fixing small memory leak
2018-01-02BUG/MINOR: Lua: The socket may be destroyed when we try to access.
2018-01-02BUG/MEDIUM: epoll: ensure we always consider HUP and ERR
2018-01-02BUG/MEDIUM: stream: properly set the required HTTP analysers on use-service
2018-01-02BUG/MEDIUM: lua: HTTP services must take care of body-less status codes
2018-01-02BUG/MEDIUM: connection: remove useless flag CO_FL_DATA_RD_SH
2018-01-02BUG/MINOR: lua: always detach the tcp/http tasks before freeing them
2017-07-20BUG/MEDIUM: lua: bad memory access
2017-07-20BUG/MAJOR: lua/socket: resources not detroyed when the socket is aborted
2017-07-20BUG/MINOR: lua: executes the function destroying the Lua session in safe mode
2017-07-20BUG/MINOR: lua: In error case, the safe mode is not removed
2017-07-20BUG/MINOR: Fix the sending function in Lua's cosocket
2017-07-20BUG/MINOR: peers: peer synchronization issue (with several peers sections).
2017-07-20BUG/MINOR: http: properly handle all 1xx informational responses
2017-07-20BUG/MINOR: stream: Don't forget to remove CF_WAKE_ONCE flag on response channel
2017-07-20BUG/MEDIUM: map/acl: fix unwanted flags inheritance.
2017-07-20BUG/MAJOR: map: fix segfault during 'show map/acl' on cli.
2017-07-20BUG/MINOR: stream: flag TASK_WOKEN_RES not set if task in runqueue
2017-07-20BUG/MINOR: log: pin the front connection when front ip/ports are logged
2017-07-20BUG/MINOR: haproxy/cli : fix for solaris/illumos distros for CMSG* macros
2017-07-20BUG/MEDIUM: cfgparse: Check if tune.http.maxhdr is in the range 1..32767
2017-07-20BUG/MEDIUM: http: Drop the connection establishment when a redirect is performed
2017-07-20BUG/MINOR: Wrong peer task expiration handling during synchronization processing.
2017-06-18BUG/MEDIUM: unix: never unlink a unix socket from the file system
2017-06-18BUG/MAJOR: server: Segfault after parsing server state file.
2017-06-18BUG/MEDIUM: peers: Peers CLOSE_WAIT issue.
2017-06-18BUG/MINOR: acls: Set the right refflag when patterns are loaded from a map
2017-06-18BUG/MINOR: buffers: Fix bi/bo_contig_space to handle full buffers
2017-06-18BUG/MAJOR: http: call manage_client_side_cookies() before erasing the buffer
2017-06-18BUG/MINOR: Makefile: fix compile error with USE_LUA=1 in ubuntu16.04
2017-06-18BUG/MEDIUM: lua: segfault if a converter or a sample doesn't return anything
2017-06-18BUG/MAJOR: dns: Broken kqueue events handling (BSD systems).
2017-06-18BUG/MINOR: checks: don't send proxy protocol with agent checks
2017-06-18BUG/MINOR: http: Fix conditions to clean up a txn and to handle the next request
2017-04-26BUG/MEDIUM: lua: memory leak
2017-04-26BUG/MINOR: server: missing default server 'resolvers' setting duplication.
2017-04-26BUG/MINOR: server: don't use "proxy" when px is really meant.
2017-04-26BUG/MAJOR: Use -fwrapv.
2017-04-26BUG/MEDIUM: acl: proprely release unused args in prune_acl_expr()
2017-04-26BUG/MEDIUM: acl: don't free unresolved args in prune_acl_expr()
2017-04-26BUG/MEDIUM: arg: ensure that we properly unlink unresolved arguments on error
2017-04-26BUG/MINOR: arg: don't try to add an argument on failed memory allocation
2017-04-26BUG/MINOR: config: missing goto out after parsing an incorrect ACL character
2017-04-26BUG/MINOR: dns: Wrong address family used when creating IPv6 sockets.
2017-03-31BUG/MEDIUM: buffers: Fix how input/output data are injected into buffers
2017-03-31BUG/MEDIUM: peers: fix buffer overflow control in intdecode.
2017-03-30BUG/MAJOR: dns: restart sockets after fork()
2017-03-27BUG: payload: fix payload not retrieving arbitrary lengths
2017-03-27BUG/MINOR: cfgparse: loop in tracked servers lists not detected by check_config_validity().
2017-03-27BUG/MINOR: raw_sock: always perfom the last recv if RDHUP is not available
2017-03-27BUG/MINOR: checks: attempt clean shutw for SSL check
2017-03-27BUG/MEDIUM: config: reject anything but "if" or "unless" after a use-backend rule
2017-03-27BUG/MEDIUM: tcp: don't require privileges to bind to device
2017-03-27BUG/MEDIUM: stream: fix client-fin/server-fin handling
2017-03-27BUG/MEDIUM: listener: do not try to rebind another process' socket
2017-03-27BUG/MEDIUM: connection: ensure to always report the end of handshakes
2017-03-27BUG/MAJOR: stream-int: do not depend on connection flags to detect connection
2017-03-27BUG/MAJOR: connection: update CO_FL_CONNECTED before calling the data layer
2017-02-23BUG/MAJOR: lua segmentation fault when the request is like 'GET ?arg=val HTTP/1.1'
2017-02-10BUG/MINOR: sendmail: The return of vsnprintf is not cleanly tested
2017-02-10BUG/MINOR: http: Return an error when a replace-header rule failed on the response
2017-02-10BUG/MEDIUM: http: Prevent replace-header from overwriting a buffer
2017-02-10BUG/MEDIUM: http: prevent redirect from overwriting a buffer
2017-01-31BUG/MINOR: lua: Map.end are not reliable because "end" is a reserved keyword
2017-01-31BUG/MINOR: unix: fix connect's polling in case no data are scheduled
2017-01-31BUG/MEDIUM: tcp: don't poll for write when connect() succeeds
2017-01-31BUG/MEDIUM: server: consider AF_UNSPEC as a valid address family
2017-01-31BUG/MINOR: tools: fix off-by-one in port size check
2017-01-31BUG/MINOR: config: emit a warning if http-reuse is enabled with incompatible options
2017-01-31BUG/MAJOR: channel: Fix the definition order of channel analyzers
2017-01-31BUG/MINOR: sample-fetches/stick-tables: bad type for the sample fetches sc*_get_gpt0
2017-01-31BUG/MINOR: option prefer-last-server must be ignored in some case
2016-12-24BUG/MINOR: systemd: potential zombie processes
2016-12-24BUG/MEDIUM: ssl: for a handshake when server-side SNI changes
2016-12-24BUG/MINOR: backend: nbsrv() should return 0 if backend is disabled
2016-12-24BUG/MEDIUM: ssl: avoid double free when releasing bind_confs
2016-12-24BUG/MEDIUM: ssl: properly reset the reused_sess during a forced handshake
2016-12-24BUG/MINOR: lua: memory leak executing tasks
2016-12-24BUG/MINOR: stream-int: automatically release SI_FL_WAIT_DATA on SHUTW_NOW
2016-12-24BUG/MEDIUM: lua: In some case, the return of sample-fetches is ignored (2)
2016-12-24BUG/MAJOR: Fix how the list of entities waiting for a buffer is handled
2016-12-24BUG/MEDIUM: stream: Save unprocessed events for a stream
2016-12-24BUG/MINOR: cli: be sure to always warn the cli applet when input buffer is full
2016-12-24BUG/MEDIUM: variables: some variable name can hide another ones
2016-12-08BUG/MINOR: http: don't send an extra CRLF after a Set-Cookie in a redirect
2016-12-08BUG/MAJOR: stream: fix session abort on resource shortage
2016-12-08BUG/MEDIUM: proxy: return "none" and "unknown" for unknown LB algos
2016-12-08BUG/MINOR: freq-ctr: make swrate_add() support larger values
2016-12-08BUG/MINOR: cli: wake up the CLI's task after a timeout update
2016-12-08BUG/MINOR: cli: dequeue from the proxy when changing a maxconn
2016-12-08BUG/MINOR: cli: fix pointer size when reporting data/transport layer name

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