haproxy/src
Amaury Denoyelle a81bb7197e BUG/MINOR: backend: check available list allocation for reuse
Do not consider reuse connection if available list is not allocated for
the target server. This will prevent a crash when using a standalone
server for an external purpose like socket_tcp/socket_ssl on hlua code.
For the idle/safe lists, they are considered allocated if
srv.max_idle_conns is not null.

Note that the hlua code is currently safe thanks to the additional
checks on proxy http mode and stream reuse policy not never. However,
this might not be sufficient for future code.

This patch should be backported in every branches containing the
following patch :
  7f68d815af (2.4 tree)
  REORG: backend: simplify conn_backend_get
2021-01-28 18:12:07 +01:00
..
51d.c MEDIUM: xxhash: use the XXH3 functions to generate 64-bit hashes 2020-12-23 06:39:21 +01:00
acl.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
action.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
activity.c
applet.c
arg.c
auth.c CLEANUP: assorted typo fixes in the code and comments 2021-01-06 17:32:03 +01:00
backend.c BUG/MINOR: backend: check available list allocation for reuse 2021-01-28 18:12:07 +01:00
base64.c
cache.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
calltrace.c
cfgparse-global.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
cfgparse-listen.c BUG/MINOR: config: fix leak on proxy.conn_src.bind_hdr_name 2021-01-26 14:48:39 +01:00
cfgparse-ssl.c MINOR: ssl: Remove client_crt member of the server's ssl context 2021-01-26 15:19:36 +01:00
cfgparse-tcp.c CLEANUP: cfgparse: remove duplicate registration for transparent build options 2020-11-05 19:27:16 +01:00
cfgparse-unix.c
cfgparse.c CLEANUP: cfgparse: replace "realloc" with "my_realloc2" to fix to memory leak on error 2021-01-08 14:45:39 +01:00
channel.c
check.c BUG/MEDIUM: tcpcheck: Don't destroy connection in the wake callback context 2021-01-21 15:21:12 +01:00
chunk.c
cli.c MINOR: cli/show_fd: report some easily detectable suspicious states 2021-01-21 09:09:05 +01:00
compression.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
connection.c MEDIUM: connection: make use of the control layer check_events/ignore_events 2020-12-11 17:06:11 +01:00
da.c CLEANUP: config: Return ERR_NONE from config callbacks instead of 0 2020-11-13 16:26:10 +01:00
debug.c BUILD: debug: fix build warning by consuming the write() result 2021-01-22 15:58:26 +01:00
dgram.c
dict.c MEDIUM: stick-tables: Add srvkey option to stick-table 2020-12-31 10:04:54 +01:00
dns.c BUG/MINOR: dns: SRV records ignores duplicated AR records (v2) 2021-01-15 17:01:24 +01:00
dynbuf.c
eb32sctree.c
eb32tree.c
eb64tree.c
ebimtree.c
ebistree.c
ebmbtree.c
ebpttree.c
ebsttree.c
ebtree.c
ev_epoll.c
ev_evports.c
ev_kqueue.c
ev_poll.c CLEANUP: few extra typo and fixes over last one ("ot" -> "to") 2021-01-06 17:35:52 +01:00
ev_select.c CLEANUP: few extra typo and fixes over last one ("ot" -> "to") 2021-01-06 17:35:52 +01:00
extcheck.c BUG/MINOR: extcheck: add missing checks on extchk_setenv() 2020-10-24 13:07:39 +02:00
fcgi-app.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
fcgi.c
fd.c CLEANUP: Fix spelling errors in comments 2021-01-08 14:56:32 +01:00
filters.c BUG/MEDIUM: filters/htx: Fix data forwarding when payload length is unknown 2021-01-26 09:53:52 +01:00
fix.c CLEANUP: assorted typo fixes in the code and comments 2020-12-21 11:24:48 +01:00
flt_http_comp.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
flt_spoe.c CLEANUP: spoe: fix typo on var_check_arg comment 2021-01-05 17:23:32 +01:00
flt_trace.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
freq_ctr.c
frontend.c MINOR: frontend: add client timeout sample fetch 2020-12-11 12:01:07 +01:00
h1_htx.c MINOR: h1: Raise the chunk size limit up to (2^52 - 1) 2021-01-28 16:37:14 +01:00
h1.c MEDIUM: h1: add a WebSocket key on handshake if needed 2021-01-28 16:37:14 +01:00
h2.c MEDIUM: h2: parse Extended CONNECT request to htx 2021-01-28 16:37:14 +01:00
haproxy.c BUG/MINOR: config: fix leak on proxy.conn_src.bind_hdr_name 2021-01-26 14:48:39 +01:00
hash.c
hlua_fcn.c MEDIUM: stats: allow to select one field in stats_fill_sv_stats 2021-01-26 09:24:51 +01:00
hlua.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
hpack-dec.c
hpack-enc.c
hpack-huff.c
hpack-tbl.c
http_acl.c CLEANUP: acl: don't reference the generic pattern deletion function anymore 2020-11-05 19:27:09 +01:00
http_act.c CLEANUP: Fix spelling errors in comments 2021-01-08 14:56:32 +01:00
http_ana.c MEDIUM: http-ana: Deal with L7 retries in HTTP analysers 2021-01-28 16:37:14 +01:00
http_conv.c MINOR: converter: adding support for url_enc 2021-01-06 23:43:04 +01:00
http_fetch.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
http_htx.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
http_rules.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
http.c MINOR: http: Add HTTP 501-not-implemented error message 2021-01-21 15:21:12 +01:00
htx.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
lb_chash.c MINOR: lb/chash: use a read lock in chash_get_server_hash() 2020-10-17 20:15:49 +02:00
lb_fas.c MINOR: lb/first: use a read lock in fas_get_next_server() 2020-10-17 19:49:49 +02:00
lb_fwlc.c BUG/MEDIUM: lb-leastconn: Reposition a server using the right eweight 2020-12-14 09:52:34 +01:00
lb_fwrr.c MINOR: backend: replace the lbprm lock with an rwlock 2020-10-17 18:51:41 +02:00
lb_map.c MINOR: lb/map: use seek lock and read locks where appropriate 2020-10-17 19:04:27 +02:00
listener.c Revert "BUG/MEDIUM: listener: do not accept connections faster than we can process them" 2021-01-28 18:11:32 +01:00
log.c MINOR: muxes: Add exit status for errors about not implemented features 2021-01-21 15:21:12 +01:00
lru.c
mailers.c
map.c MEDIUM: pattern: only match patterns that match the current generation 2020-11-05 19:27:09 +01:00
mqtt.c CLEANUP: assorted typo fixes in the code and comments 2020-12-21 11:24:48 +01:00
mux_fcgi.c MINOR: mux-fcgi/trace: add traces at level ERROR for all kind of errors 2021-01-28 16:37:14 +01:00
mux_h1.c MINOR: mux-h1/trace: add traces at level ERROR for all kind of errors 2021-01-28 16:37:14 +01:00
mux_h2.c MEDIUM: h2: send connect protocol h2 settings 2021-01-28 16:37:14 +01:00
mux_pt.c MINOR: xprt/mux: export all *_io_cb functions so that "show fd" resolves them 2021-01-20 17:17:39 +01:00
mworker-prog.c CLEANUP: mworker: remove duplicate pointer tests in cfg_parse_program() 2021-01-05 15:58:37 +01:00
mworker.c BUG/MINOR: mworker: define _GNU_SOURCE for strsignal() 2021-01-21 12:16:52 +01:00
namespace.c
pattern.c CLEANUP: pattern: rename pat_ref_commit() to pat_ref_commit_elt() 2021-01-15 14:11:59 +01:00
payload.c MINOR: config: Deprecate and ignore tune.chksize global option 2020-11-27 10:30:23 +01:00
peers.c BUG/MINOR: peers: Wrong "new_conn" value for "show peers" CLI command. 2021-01-19 10:08:18 +01:00
pipe.c
pool.c MEDIUM: pools: call malloc_trim() from pool_gc() 2020-11-05 19:27:08 +01:00
proto_quic.c CLEANUP: assorted typo fixes in the code and comments 2021-01-06 17:32:03 +01:00
proto_sockpair.c MINOR: protocol: add a pair of check_events/ignore_events functions at the ctrl layer 2020-12-11 17:02:50 +01:00
proto_tcp.c MINOR: protocol: add a pair of check_events/ignore_events functions at the ctrl layer 2020-12-11 17:02:50 +01:00
proto_udp.c MINOR: udp: export udp_suspend_receiver() and udp_resume_receiver() 2020-12-08 18:10:18 +01:00
proto_uxst.c MINOR: protocol: add a pair of check_events/ignore_events functions at the ctrl layer 2020-12-11 17:02:50 +01:00
protocol.c MINOR: protocol: remove the redundant ->sock_domain field 2020-12-08 12:13:54 +01:00
proxy.c BUG/MEDIUM: stream: Don't immediatly ack the TCP to H1 upgrades 2021-01-28 16:27:48 +01:00
qpack-tbl.c CLEANUP: qpack: Wrong comment about the draft for QPACK static header table. 2021-01-04 12:31:28 +01:00
queue.c BUG/MEDIUM: queue: fix unsafe proxy pointer when counting nbpend 2020-10-24 12:57:41 +02:00
quic_cc_newreno.c MINOR: quic: Add traces to congestion avoidance NewReno callback. 2020-12-23 11:57:26 +01:00
quic_cc.c MINOR: quic: Import C source code files for QUIC protocol. 2020-12-23 11:57:26 +01:00
quic_frame.c CLEANUP: assorted typo fixes in the code and comments 2021-01-06 16:26:50 +01:00
quic_sock.c MINOR: quic: QUIC socket management finalization. 2020-12-23 11:57:26 +01:00
quic_tls.c MINOR: quic: Update the initial salt to that of draft-29. 2020-12-23 11:57:26 +01:00
raw_sock.c
regex.c
ring.c
sample.c BUG/MINOR: sample: Memory leak of sample_expr structure in case of error 2021-01-12 17:00:59 +01:00
server.c MINOR: ssl: Remove client_crt member of the server's ssl context 2021-01-26 15:19:36 +01:00
session.c MINOR: session: Add the idle duration field into the session 2020-12-04 14:41:48 +01:00
sha1.c
shctx.c
signal.c
sink.c BUG/MINOR: sink: Return an allocation failure in __sink_new if strdup() fails 2021-01-03 20:35:45 +01:00
sock_inet.c MINOR: protocol: add a ->set_port() helper to address families 2020-12-04 15:08:00 +01:00
sock_unix.c CLEANUP: protocol: remove the now unused <handler> field of proto_fam->bind() 2020-10-15 21:47:56 +02:00
sock.c MINOR: protocol: add a pair of check_events/ignore_events functions at the ctrl layer 2020-12-11 17:02:50 +01:00
ssl_ckch.c BUG/MINOR: ssl: init tmp chunk correctly in ssl_sock_load_sctl_from_file() 2021-01-27 14:58:51 +01:00
ssl_crtlist.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
ssl_sample.c BUILD: ssl: use HAVE_OPENSSL_KEYLOG instead of OpenSSL versions 2020-11-03 14:54:15 +01:00
ssl_sock.c CLEANUP: ssl: remove dead code in ckch_inst_new_load_srv_store() 2021-01-27 14:44:59 +01:00
ssl_utils.c
stats.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
stick_table.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
stream_interface.c MEDIUM: http-ana: Deal with L7 retries in HTTP analysers 2021-01-28 16:37:14 +01:00
stream.c MEDIUM: http-ana: Deal with L7 retries in HTTP analysers 2021-01-28 16:37:14 +01:00
task.c BUG/MEDIUM: task: close a possible data race condition on a tasklet's list link 2020-11-30 18:17:59 +01:00
tcp_act.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
tcp_rules.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
tcp_sample.c
tcpcheck.c MAJOR: htx: Remove the EOM block type and use HTX_FL_EOM instead 2021-01-28 16:37:14 +01:00
thread.c BUG/MINOR: threads: Fixes the number of possible cpus report for Mac. 2021-01-15 11:58:46 +01:00
time.c
tools.c CLEANUP: tools: make resolve_sym_name() take a const pointer 2021-01-20 17:17:39 +01:00
trace.c BUG/MINOR: trace: Wrong displayed trace level 2020-12-02 17:44:40 +01:00
uri_auth.c CLEANUP: Compare the return value of XXXcmp() functions with zero 2021-01-04 10:09:02 +01:00
vars.c MINOR: vars: replace static functions with global ones 2020-12-16 14:20:08 +01:00
version.c
wdt.c CLEANUP: config: Return ERR_NONE from config callbacks instead of 0 2020-11-13 16:26:10 +01:00
wurfl.c CLEANUP: config: Return ERR_NONE from config callbacks instead of 0 2020-11-13 16:26:10 +01:00
xprt_handshake.c MINOR: xprt/mux: export all *_io_cb functions so that "show fd" resolves them 2021-01-20 17:17:39 +01:00
xprt_quic.c MINOR: xprt/mux: export all *_io_cb functions so that "show fd" resolves them 2021-01-20 17:17:39 +01:00