haproxy/src
Frederic Lecaille 58b6b58019 BUG/MINOR: quic: Crash from trace dumping SSL eary data status (AWS-LC)
This bug follows this patch:
     MINOR: quic: Add trace for QUIC_EV_CONN_IO_CB event.
where a new third variable was added to be dumped from QUIC_EV_CONN_IO_CB trace
event. The quic_trace() code did not reveal there was already another variable
passed as third argument but not dumped. This leaded to crash when dereferencing
a point to an int in place of a point to an SSL object.

This issue was reproduced only by handshakecorruption aws-lc interop test with
s2n-quic as client.

Note that this patch must be backported with this one:
     BUG/MEDIUM: quic: always validate sender address on 0-RTT
which depends on the commit mentionned above.

(cherry picked from commit db13df3d6e)
Signed-off-by: Frederic Lecaille <flecaille@haproxy.com>
2024-09-05 15:16:49 +02:00
..
acl.c BUG/MINOR: acl: support built-in ACLs with acl() sample 2024-05-06 18:42:54 +02:00
action.c
activity.c BUG/MINOR: activity: fix Delta_calls and Delta_bytes count 2024-05-28 19:25:08 +02:00
applet.c BUG/MEDIUM: mux-quic: Don't unblock zero-copy fwding if blocked during nego 2024-06-06 14:15:51 +02:00
arg.c
auth.c
backend.c BUG/MEDIUM: queue: deal with a rare TOCTOU in assign_server_and_queue() 2024-07-29 12:11:53 +02:00
base64.c
cache.c MINOR: applet: set the blocking flag in the buffer allocation function 2024-05-10 17:18:13 +02:00
calltrace.c
cbuf.c
cfgcond.c
cfgdiag.c
cfgparse-global.c BUG/MINOR: cfgparse-global: remove tune.fast-forward from common_kw_list 2024-09-03 18:49:07 +02:00
cfgparse-listen.c MEDIUM: quic: implement quic-initial rules 2024-09-05 14:49:59 +02:00
cfgparse-quic.c MINOR: quic: support ACL for quic-initial rules 2024-09-05 14:51:51 +02:00
cfgparse-ssl.c DOC: configuration: update the crt-list documentation 2024-05-21 18:30:45 +02:00
cfgparse-tcp.c MINOR: capabilities: add cap_sys_admin support 2024-04-30 21:40:17 +02:00
cfgparse-unix.c
cfgparse.c BUG/MINOR: cfgparse: remove the correct option on httpcheck send-state warning 2024-06-06 14:06:52 +02:00
channel.c MINOR: channel: implement ci_insert() function 2024-09-03 18:49:07 +02:00
check.c MEDIUM: dynbuf: generalize the use of b_dequeue() to detach buffer_wait 2024-05-10 17:18:13 +02:00
chunk.c
cli.c BUG/MEDIUM: mworker/cli: fix pipelined modes on master CLI 2024-09-03 18:49:07 +02:00
clock.c BUG/MEDIUM: clock: also update the date offset on time jumps 2024-09-04 17:13:00 +02:00
compression.c MINOR: dynbuf: pass a criticality argument to b_alloc() 2024-05-10 17:18:13 +02:00
connection.c BUG/MINOR: rhttp: initialize session origin after preconnect reversal 2024-05-24 14:47:21 +02:00
cpuset.c CLEANUP: Reapply xalloc_cast.cocci 2024-04-02 07:27:33 +02:00
debug.c BUG/MEDIUM: debug/cli: fix "show threads" crashing with low thread counts 2024-07-29 11:56:13 +02:00
dgram.c
dict.c
dns_ring.c MEDIUM: ring/applet: turn the wait_entry list to an mt_list instead 2024-03-25 17:34:19 +00:00
dns.c MEDIUM: ring/applet: turn the wait_entry list to an mt_list instead 2024-03-25 17:34:19 +00:00
dynbuf.c MEDIUM: dynbuf: implement emergency buffers 2024-05-10 17:18:13 +02:00
eb32sctree.c
eb32tree.c
eb64tree.c
ebimtree.c
ebistree.c
ebmbtree.c
ebpttree.c
ebsttree.c
ebtree.c
errors.c DEBUG: errors: add name hint for startup-logs memory area 2024-05-21 17:55:20 +02:00
ev_epoll.c DEBUG: pollers/fd: add thread id suffix to per-thread memory areas name hints 2024-05-24 12:07:18 +02:00
ev_evports.c Revert: MEDIUM: evports: permit to report multiple events at once" 2024-05-17 15:57:18 +02:00
ev_kqueue.c
ev_poll.c DEBUG: pollers/fd: add thread id suffix to per-thread memory areas name hints 2024-05-24 12:07:18 +02:00
ev_select.c DEBUG: pollers/fd: add thread id suffix to per-thread memory areas name hints 2024-05-24 12:07:18 +02:00
event_hdl.c CLEANUP: Reapply strcmp.cocci (2) 2024-04-02 07:27:33 +02:00
extcheck.c
fcgi-app.c BUG/MINOR: fcgi-app: handle a possible strdup() failure 2024-09-03 18:37:59 +02:00
fcgi.c
fd.c BUILD: fd: errno is also needed without poll() 2024-05-27 19:14:14 +02:00
filters.c
fix.c
flt_bwlim.c BUG/MEDIUM: bwlim: Be sure to never set the analyze expiration date in past 2024-07-11 15:44:58 +02:00
flt_http_comp.c MINOR: dynbuf: pass a criticality argument to b_alloc() 2024-05-10 17:18:13 +02:00
flt_spoe.c BUG/MEDIUM: spoe: Be sure to create a SPOE applet if none on the current thread 2024-07-11 15:44:58 +02:00
flt_trace.c
freq_ctr.c
frontend.c MINOR: counters: move freq-ctr from proxy/server into counters struct 2024-05-02 10:55:25 +02:00
guid.c MINOR: guid: define guid_is_valid_fmt() 2024-04-26 11:29:25 +02:00
h1_htx.c BUG/MEDIUM: h1-htx: Don't state interim responses are bodyless 2024-06-06 14:13:39 +02:00
h1.c MEDIUM: h1: allow to preserve keep-alive on T-E + C-L 2024-07-29 12:11:39 +02:00
h2.c BUG/MEDIUM: h2: Only report early HTX EOM for tunneled streams 2024-09-03 18:33:34 +02:00
h3_stats.c MINOR: h3/qpack: adjust naming for errors 2024-05-16 10:31:17 +02:00
h3.c BUG/MINOR: h3: properly reject too long header responses 2024-09-03 18:49:07 +02:00
haproxy.c BUG/MEDIUM: init: fix fd_hard_limit default in compute_ideal_maxconn 2024-07-29 14:20:15 +02:00
hash.c
hlua_fcn.c MINOR: stats: define stats-file output format support 2024-04-26 10:20:57 +02:00
hlua.c BUG/MEDIUM: hlua/cli: Fix lua CLI commands to work with applet's buffers 2024-07-03 08:50:45 +02:00
hpack-dec.c
hpack-enc.c
hpack-huff.c
hpack-tbl.c
hq_interop.c MINOR: dynbuf: pass a criticality argument to b_alloc() 2024-05-10 17:18:13 +02:00
http_acl.c
http_act.c MAJOR: log: implement proper postparsing for logformat expressions 2024-04-04 19:10:01 +02:00
http_ana.c BUG/MEDIUM: http-ana: Report error on write error waiting for the response 2024-09-03 18:33:26 +02:00
http_client.c MINOR: server: define pool-conn-name keyword 2024-05-24 14:36:31 +02:00
http_conv.c
http_ext.c OPTIM: http_ext: avoid useless copy in http_7239_extract_{ipv4,ipv6} 2024-03-25 16:24:15 +01:00
http_fetch.c MEDIUM: tree-wide: add logformat expressions wrapper 2024-04-04 19:10:01 +02:00
http_htx.c BUG/MINOR: http-htx: Support default path during scheme based normalization 2024-05-24 16:17:24 +02:00
http_rules.c MAJOR: log: implement proper postparsing for logformat expressions 2024-04-04 19:10:01 +02:00
http.c
htx.c
init.c
jwt.c BUG/MEDIUM: jwt: Clear SSL error queue on error when checking the signature 2024-07-29 11:56:13 +02:00
lb_chash.c MEDIUM: lb-chash: Deterministic node hashes based on server address 2024-04-02 07:00:10 +02:00
lb_fas.c
lb_fwlc.c
lb_fwrr.c
lb_map.c
lb_ss.c MINOR: lbprm: implement true "sticky" balance algo 2024-03-29 17:08:37 +01:00
linuxcap.c MINOR: capabilities: add cap_sys_admin support 2024-04-30 21:40:17 +02:00
listener.c CLEANUP: proto: rename TID affinity callbacks 2024-07-29 11:56:13 +02:00
log.c MEDIUM: log: relax some checks and emit diag warnings instead in lf_expr_postcheck() 2024-08-16 14:34:21 +02:00
lru.c BUG/MINOR: lru: fix the standalone test case for invalid revision 2024-04-13 08:43:12 +02:00
mailers.c
map.c MEDIUM: cli/applet: Stop to test opposite SC in I/O handler of CLI commands 2024-03-28 17:28:20 +01:00
mjson.c
mqtt.c
mux_fcgi.c BUG/MEDIUM: muxes: enforce buf_wait check in takeover() 2024-05-15 19:37:12 +02:00
mux_h1.c BUG/MEDIUM: mux-pt/mux-h1: Release the pipe on connection error on sending path 2024-09-03 18:31:09 +02:00
mux_h2.c BUG/MEDIUM: mux-h2: Propagate term flags to SE on error in h2s_wake_one_stream 2024-09-03 18:33:40 +02:00
mux_pt.c BUILD: mux-pt: Use the right name for the sedesc variable 2024-09-03 18:31:16 +02:00
mux_quic.c BUG/MINOR: mux-quic: do not send too big MAX_STREAMS ID 2024-09-03 18:49:07 +02:00
mworker-prog.c
mworker.c MEDIUM: mworker: get rid of libsystemd 2024-04-03 15:53:18 +02:00
namespace.c
ncbuf.c
pattern.c BUG/MINOR: pattern: pat_ref_set: return 0 if err was found 2024-09-03 18:49:07 +02:00
payload.c
peers.c BUG/MEDIUM: peer: Notify the applet won't consume data when it waits for sync 2024-09-03 18:33:45 +02:00
pipe.c
pool.c DEBUG: pools: report the data around the offending area in case of mismatch 2024-04-12 18:01:55 +02:00
proto_quic.c CLEANUP: quic: rename TID affinity elements 2024-07-29 11:56:13 +02:00
proto_rhttp.c CLEANUP: proto: rename TID affinity callbacks 2024-07-29 11:56:13 +02:00
proto_sockpair.c
proto_tcp.c BUG/MINOR: proto_tcp: keep error msg if listen() fails 2024-09-03 18:38:52 +02:00
proto_udp.c
proto_uxdg.c
proto_uxst.c BUG/MINOR: proto_uxst: delete fd from fdtab if listen() fails 2024-09-03 18:49:07 +02:00
protocol.c MINOR: listener/protocol: add proto name in alerts 2024-04-12 18:51:40 +02:00
proxy.c MEDIUM: quic: implement quic-initial rules 2024-09-05 14:49:59 +02:00
qmux_http.c
qmux_trace.c
qpack-dec.c MINOR: h3/qpack: adjust naming for errors 2024-05-16 10:31:17 +02:00
qpack-enc.c
qpack-tbl.c
queue.c MINOR: queue: add a function to check for TOCTOU after queueing 2024-07-29 12:11:48 +02:00
quic_ack.c
quic_cc_cubic.c BUILD: quic: 32bits build broken by wrong integer conversions for printf() 2024-09-03 18:49:07 +02:00
quic_cc_newreno.c MINOR: quic: HyStart++ implementation (RFC 9406) 2024-04-02 18:47:19 +02:00
quic_cc_nocc.c
quic_cc.c
quic_cid.c BUG/MINOR: quic: fix race-condition on trace for CID retrieval 2024-07-03 08:45:26 +02:00
quic_cli.c BUILD: quic: 32bits build broken by wrong integer conversions for printf() 2024-09-03 18:49:07 +02:00
quic_conn.c BUG/MEDIUM: quic: always validate sender address on 0-RTT 2024-09-05 15:16:06 +02:00
quic_fctl.c
quic_frame.c MINOR: quic: Modify NEW_TOKEN frame structure (qf_new_token struct) 2024-09-05 15:11:38 +02:00
quic_loss.c
quic_openssl_compat.c
quic_retransmit.c BUG/MINOR: quic: unexploited retransmission cases for Initial pktns. 2024-09-03 13:56:55 +02:00
quic_retry.c BUG/MEDIUM: quic: always validate sender address on 0-RTT 2024-09-05 15:16:06 +02:00
quic_rules.c MINOR: quic: implement send-retry quic-initial rules 2024-09-05 14:55:44 +02:00
quic_rx.c BUG/MEDIUM: quic: always validate sender address on 0-RTT 2024-09-05 15:16:06 +02:00
quic_sock.c BUG/MEDIUM: quic: fix invalid conn reject with CONNECTION_REFUSED 2024-09-05 14:56:13 +02:00
quic_ssl.c BUG/MINOR: quic: Crash from trace dumping SSL eary data status (AWS-LC) 2024-09-05 15:16:49 +02:00
quic_stats.c MINOR: stats: introduce a more expressive stat definition method 2024-04-26 10:20:57 +02:00
quic_stream.c
quic_tls.c MEDIUM: ssl/quic: implement quic crypto with EVP_AEAD 2024-09-05 15:04:37 +02:00
quic_token.c MINOR: quic: Token for future connections implementation. 2024-09-05 15:05:43 +02:00
quic_tp.c BUG/MEDIUM: quic: don't blindly rely on unaligned accesses 2024-04-06 00:07:49 +02:00
quic_trace.c BUG/MINOR: quic: Crash from trace dumping SSL eary data status (AWS-LC) 2024-09-05 15:16:49 +02:00
quic_tx.c BUG/MINOR: quic: fix BUG_ON() on Tx pkt alloc failure 2024-06-26 15:16:24 +02:00
raw_sock.c
regex.c
resolvers.c BUG/MINOR: promex: Skip resolvers metrics when there is no resolver section 2024-06-12 09:13:19 +02:00
ring.c CLEANUP: assorted typo fixes in the code and comments 2024-04-17 11:14:44 +02:00
sample.c BUG/MINOR: jwt: fix variable initialisation 2024-07-11 15:44:58 +02:00
server_state.c MINOR: counters: move last_change into counters struct 2024-05-02 10:55:25 +02:00
server.c BUG/MEDIUM: server/addr: fix tune.events.max-events-at-once event miss and leak 2024-09-03 16:39:52 +02:00
session.c BUG/MINOR: session: Eval L4/L5 rules defined in the default section 2024-07-29 11:56:13 +02:00
sha1.c
shctx.c DEBUG: shctx: name shared memory using vma_set_name() 2024-05-21 17:55:03 +02:00
signal.c
sink.c Revert "MEDIUM: sink: don't set NOLINGER flag on the outgoing stream interface" 2024-07-29 16:30:42 +02:00
slz.c
sock_inet.c
sock_unix.c MEIDUM: unix sock: use my_socketat to create bind socket 2024-04-30 21:38:24 +02:00
sock.c MEDIUM: config: prevent communication with privileged ports 2024-05-24 14:36:31 +02:00
ssl_ckch.c MEDIUM: ssl: don't load file by discovering them in crt-store 2024-05-21 18:30:45 +02:00
ssl_crtlist.c MEDIUM: ssl: don't load file by discovering them in crt-store 2024-05-21 18:30:45 +02:00
ssl_gencert.c MEDIUM: ssl: allow to change the OpenSSL security level from global section 2024-03-12 17:37:11 +01:00
ssl_ocsp.c MEDIUM: ssl/cli: handle crt-store keywords in crt-list over the CLI 2024-05-17 17:35:51 +02:00
ssl_sample.c MINOR: ssl: implement keylog fetches for backend connections 2024-04-19 14:48:44 +02:00
ssl_sock.c BUG/MEDIUM: ssl: 0-RTT initialized at the wrong place for AWS-LC 2024-09-03 18:33:00 +02:00
ssl_utils.c
stats-file.c BUILD: stats: remove non portable getline() usage 2024-05-17 14:53:19 +02:00
stats-html.c BUG/MINOR: stats: Don't state the 303 redirect response is chunked 2024-05-17 16:33:53 +02:00
stats-json.c MINOR: stats: update ambiguous "metrics" naming to "stat_cols" 2024-04-26 10:20:57 +02:00
stats-proxy.c MINOR: stats: extract proxy clear-counter in a dedicated function 2024-05-02 16:43:26 +02:00
stats.c CLEANUP: assorted typo fixes in the code and comments 2024-05-03 09:01:36 +02:00
stconn.c BUG/MINOR: stconn: bs.id and fs.id had their dependencies incorrect 2024-09-03 18:31:22 +02:00
stick_table.c BUG/MINOR: stick-table: fix crash for src_inc_gpc() without stkcounter 2024-07-29 11:56:13 +02:00
stream.c BUG/MEDIUM: stream: Prevent mux upgrades if client connection is no longer ready 2024-09-02 20:09:33 +02:00
systemd.c MEDIUM: mworker: get rid of libsystemd 2024-04-03 15:53:18 +02:00
task.c
tcp_act.c MINOR: server: define pool-conn-name keyword 2024-05-24 14:36:31 +02:00
tcp_rules.c
tcp_sample.c
tcpcheck.c BUG/MINOR: tcpcheck: report correct error in tcp-check rule parser 2024-06-06 14:07:11 +02:00
thread.c MINOR: config: add thread-hard-limit to set an upper bound to nbthread 2024-05-24 09:46:49 +02:00
time.c
tools.c MINOR: tools: Implement ipaddrcpy(). 2024-09-05 15:00:49 +02:00
trace.c BUG/MINOR: trace/quic: make "qconn" selectable as a lockon criterion 2024-09-03 18:38:32 +02:00
uri_auth.c MINOR: stats: use STAT_F_* prefix for flags 2024-04-22 16:25:18 +02:00
uri_normalizer.c
vars.c MAJOR: log: implement proper postparsing for logformat expressions 2024-04-04 19:10:01 +02:00
version.c
wdt.c
xprt_handshake.c
xprt_quic.c CLEANUP: quic: rename TID affinity elements 2024-07-29 11:56:13 +02:00