haproxy/src
Miroslav Zagorac cd14abf9f3 MEDIUM: otel: added OpenTelemetry filter skeleton
The OpenTelemetry (OTel) filter enables distributed tracing of requests
across service boundaries, export of metrics such as request rates,
latencies and error counts, and structured logging tied to trace context,
giving operators a unified view of HAProxy traffic through any
OpenTelemetry-compatible backend.

The OTel filter is implemented using the standard HAProxy stream filter
API.  Stream filters attach to proxies and intercept traffic at each stage
of processing: they receive callbacks on stream creation and destruction,
channel analyzer events, HTTP header and payload processing, and TCP data
forwarding.  This allows the filter to collect telemetry data at every
stage of the request/response lifecycle without modifying the core proxy
logic.

This commit added the minimum set of files required for the filter to
compile: the addon Makefile with pkg-config-based detection of the
opentelemetry-c-wrapper library, header files with configuration
constants, utility macros and type definitions, and the source files
containing stub filter operation callbacks registered through
flt_otel_ops and the "opentelemetry" keyword parser entry point.

The filter uses the opentelemetry-c-wrapper library from HAProxy
Technologies, which provides a C interface to the OpenTelemetry C++ SDK.
This wrapper allows HAProxy, a C codebase, to leverage the full
OpenTelemetry observability pipeline without direct C++ dependencies
in the HAProxy source tree.

  https://github.com/haproxytech/opentelemetry-c-wrapper
  https://github.com/open-telemetry/opentelemetry-cpp

Build options:

  USE_OTEL     - enable the OpenTelemetry filter
  OTEL_DEBUG   - compile the filter in debug mode
  OTEL_INC     - force the include path to the C wrapper
  OTEL_LIB     - force the library path to the C wrapper
  OTEL_RUNPATH - add the C wrapper RUNPATH to the executable

Example build with OTel and debug enabled:

  make -j8 USE_OTEL=1 OTEL_DEBUG=1 TARGET=linux-glibc
2026-04-13 09:23:26 +02:00
..
_ceb_addr.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
_ceb_blk.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
_ceb_int.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
_ceb_str.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
acl.c BUG/MINOR: acl: warn if "_sub" derivative used with an explicit match 2025-10-28 11:59:32 +01:00
acme.c MEDIUM: acme: split the initial delay from the retry DNS delay 2026-04-02 18:29:26 +02:00
acme_resolvers.c MEDIUM: acme: add dns-01 DNS propagation pre-check 2026-03-30 18:24:28 +02:00
action.c MINOR: actions: also report execution contexts registered directly 2026-03-12 18:06:38 +01:00
activity.c MINOR: activity: support aggregating by caller also for memprofile 2026-03-12 18:06:38 +01:00
applet.c MEDIUM: tree-wide: Rely on htx_xfer() instead of htx_xfer_blks() 2026-03-23 14:02:43 +01:00
arg.c MINOR: arg: add an argument type for identifier 2024-10-18 14:30:24 +02:00
auth.c BUG/MINOR: auth: Fix a leak on error path when parsing user's groups 2025-02-06 16:55:37 +01:00
backend.c MAJOR: mux-quic: activate QMux on the backend side 2026-04-02 14:02:05 +02:00
base64.c
buf.c MINOR: buffers: Swap buffers of same size only 2026-02-18 13:26:20 +01:00
cache.c MEDIUM: flt_http_comp: split "compression" filter in 2 distinct filters 2026-03-06 13:55:31 +01:00
calltrace.c BUG/MINOR: calltrace: fix 'now' being used in place of 'date' 2023-04-27 18:14:57 +02:00
ceb32_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
ceb64_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
ceba_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebb_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebib_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebis_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebl_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebs_tree.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebtree-dbg.c IMPORT: cebtree: import version 0.5.0 to support duplicates 2025-09-16 09:23:46 +02:00
cebtree-prv.h IMPORT: import cebtree (compact elastic binary trees) 2024-09-15 23:44:59 +02:00
cfgcond.c BUG/MINOR: cfgcond: fail cleanly on missing argument for "feature" 2026-04-03 09:17:35 +02:00
cfgdiag.c MEDIUM: tcpcheck: Refactor how tcp-check rulesets are stored 2026-04-01 16:34:37 +02:00
cfgparse-global.c MINOR: debug: read all libs in memory when set-dumpable=libs 2026-03-18 15:30:39 +01:00
cfgparse-listen.c MEDIUM: stats: Hide the version by default and add stats-showversion 2026-04-01 14:39:28 +02:00
cfgparse-peers.c REORG: cfgparse: move peers parsing to cfgparse-peers.c 2026-01-20 17:17:37 +01:00
cfgparse-quic.c BUG/MINOR: quic: fix deprecated warning for window size keyword 2026-01-07 09:54:31 +01:00
cfgparse-ssl.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
cfgparse-tcp.c MINOR: tcp: add new bind option "tcp-ss" to instruct the kernel to save the SYN 2025-12-24 11:35:09 +01:00
cfgparse-unix.c CLEANUP: tree-wide: remove 25 occurrences of unneeded fcntl.h 2022-04-26 10:59:48 +02:00
cfgparse.c MINOR: config: Report the warning when invalid large buffer size is set 2026-03-23 14:02:42 +01:00
channel.c MINOR: channel: Remove total field from channels 2025-11-06 15:01:29 +01:00
check.c MEDIUM: check: Revamp the way the protocol and xprt are determined 2026-04-08 18:41:48 +02:00
chunk.c BUG/MEDIUM: chunk: fix infinite loop in get_larger_trash_chunk() 2026-04-07 14:20:38 +02:00
cli.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
clock.c MEDIUM: stats-file/clock: automatically update now_offset based on shared clock 2026-03-18 11:18:33 +01:00
compression.c MEDIUM: tree-wide: replace most DECLARE_POOL with DECLARE_TYPED_POOL 2025-08-11 19:55:30 +02:00
connection.c MINOR: xprt_qstrm: handle connection errors 2026-04-10 10:20:52 +02:00
counters.c BUG/MINOR: counters: fix unexpected 127 char GUID truncation for shm-stats-file objects 2026-04-04 02:14:50 +02:00
cpu_topo.c BUG/MEDIUM: cpu-topo: Distribute CPUs fairly across groups 2026-02-24 08:17:16 +01:00
cpuset.c BUG/MINOR: cpu_topo: work around a small bug in musl's CPU_ISSET() 2025-09-06 11:05:52 +02:00
debug.c MINOR: debug: report the execution context on thread dumps 2026-03-12 18:06:37 +01:00
dgram.c MINOR: cfgparse: parse tune.{rcvbuf,sndbuf}.{frontend,backend} as sizes 2024-11-18 18:50:02 +01:00
dict.c
dns.c MEDIUM: dns: bind the nameserver sockets to the initiating thread 2025-09-10 16:48:09 +02:00
dns_ring.c MAJOR: import: update mt_list to support exponential back-off (try #2) 2024-07-09 16:46:38 +02:00
dynbuf.c MINOR: buffers: Move small buffers management from quic to dynbuf part 2026-03-23 14:02:42 +01:00
eb32sctree.c
eb32tree.c IMPORT: ebtree: only use __builtin_prefetch() when supported 2025-09-17 14:30:32 +02:00
eb64tree.c IMPORT: ebtree: only use __builtin_prefetch() when supported 2025-09-17 14:30:32 +02:00
ebimtree.c
ebistree.c
ebmbtree.c
ebsttree.c
ebtree.c
ech.c BUG/MINOR: ech: permission checks on the CLI 2026-03-25 18:37:06 +01:00
errors.c MEDIUM: errors: get rid of shm_open() 2025-01-07 16:42:38 +01:00
ev_epoll.c MEDIUM: pollers: Drop fd events after a takeover to another tgid. 2025-02-26 13:00:18 +01:00
ev_evports.c MEDIUM: pollers: Drop fd events after a takeover to another tgid. 2025-02-26 13:00:18 +01:00
ev_kqueue.c MEDIUM: pollers: Drop fd events after a takeover to another tgid. 2025-02-26 13:00:18 +01:00
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 MEDIUM: tree-wide: replace most DECLARE_POOL with DECLARE_TYPED_POOL 2025-08-11 19:55:30 +02:00
extcheck.c BUG/MEDIUM: checks: make sure to always apply offsets to now_ms in expiration 2024-11-15 15:39:00 +01:00
fcgi-app.c MEDIUM: flt_http_comp: split "compression" filter in 2 distinct filters 2026-03-06 13:55:31 +01:00
fcgi.c BUG/MAJOR: fcgi: Fix param decoding by properly checking its size 2026-03-05 15:35:21 +01:00
fd.c CLEANUP: fd: make use of ha_aligned_alloc() for the fdtab 2025-08-11 19:55:30 +02:00
filters.c MEDIUM: filters: add "filter-sequence" directive 2026-04-03 12:10:27 +02:00
fix.c
flt_bwlim.c BUG/MINOR: freq_ctr: Prevent possible signed overflow in freq_ctr_overshoot_period 2025-11-24 14:10:13 +01:00
flt_http_comp.c MINOR: filters: add filter name to flt_conf struct 2026-04-03 12:10:20 +02:00
flt_spoe.c BUG/MINOR: http-ana: Only consider client abort for abortonclose 2026-03-27 11:18:40 +01:00
flt_trace.c CLEANUP: tree-wide: drop a few useless null-checks before free() 2026-02-26 08:24:03 +01:00
freq_ctr.c BUG/MINOR: freq_ctr: Prevent possible signed overflow in freq_ctr_overshoot_period 2025-11-24 14:10:13 +01:00
frontend.c MEDIUM: Add connect/queue/tarpit timeouts to set-timeout 2026-02-19 08:20:37 +01:00
guid.c MEDIUM: guid: switch guid to more compact cebuis_tree 2025-09-16 09:23:46 +02:00
h1.c BUG/MEDIUM: h1/h2/h3: reject forbidden chars in the Host header field 2025-05-16 15:13:17 +02:00
h1_htx.c BUG/MINOR: h1-htx: Be sure that H1 response version starts by "HTTP/" 2026-03-05 15:34:46 +01:00
h2.c BUG/MINOR: h2/h3: Never insert partial headers/trailers in an HTX message 2026-03-17 07:48:02 +01:00
h3.c BUG/MEDIUM: h3: reject unaligned frames except DATA 2026-03-19 10:40:25 +01:00
h3_stats.c MEDIUM: counters: return aggregate extra counters in ->fill_stats() 2026-02-26 17:03:53 +01:00
haproxy.c MINOR: ssl/log: add keylog format variables and env vars 2026-04-01 16:28:49 +02:00
hash.c BUILD: hash: use __fallthrough in hash_djb2() 2022-11-14 11:14:02 +01:00
haterm.c BUG/MEDIUM: haterm: Properly initialize the splicing support for haterm 2026-04-10 16:32:29 +02:00
haterm_init.c Revert "BUG/MEDIUM: haterm: Move all init functions of haterm in haterm_init.c" 2026-04-10 16:32:29 +02:00
hlua.c BUG/MINOR: hlua: fix use-after-free of HTTP reason string 2026-04-10 10:18:27 +02:00
hlua_fcn.c BUG/MINOR: hlua: fix format-string vulnerability in Patref error path 2026-04-07 14:18:13 +02:00
hpack-dec.c BUG/MEDIUM: hpack: correctly deal with too large decoded numbers 2026-03-05 14:33:21 +01:00
hpack-enc.c
hpack-huff.c BUG/MEDIUM: hpack: fix incorrect huffman decoding of some control chars 2023-01-26 11:36:39 +01:00
hpack-tbl.c BUILD/DEBUG: hpack-tbl: fix format string in standalone debug code 2022-04-12 08:30:08 +02:00
hq_interop.c MEDIUM: quic/mux-quic: adjust app-ops install 2026-03-03 16:22:57 +01:00
http.c MINOR: http: fix 405,431,501 default errorfile 2025-10-29 08:47:19 +01:00
http_acl.c
http_act.c BUG/MINOR: http-act: validate decoded lengths in *-headers-bin 2026-04-09 17:10:56 +02:00
http_ana.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
http_client.c MEDIUM: tree-wide: Rely on htx_xfer() instead of htx_xfer_blks() 2026-03-23 14:02:43 +01:00
http_conv.c MEDIUM: sample: Get chunks with a size dependent on input data when necessary 2026-02-18 13:26:21 +01:00
http_ext.c CLEANUP: assorted typo fixes in the code and comments 2025-04-02 11:12:20 +02:00
http_fetch.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
http_htx.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
http_rules.c MINOR: actions: store the location of keywords registered via initcalls 2026-03-12 18:06:38 +01:00
httpclient_cli.c MINOR: httpclient-cli: Reset httpclient HTX buffer instead of removing blocks 2025-07-24 12:13:42 +02:00
htx.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
init.c MINOR: initcall: record the file and line declaration of an INITCALL 2026-03-12 18:06:38 +01:00
jwe.c BUG/MEDIUM: jwe: fix memory leak in jwt_decrypt_secret with var argument 2026-04-07 11:17:30 +02:00
jws.c BUG/MINOR: jws: fix memory leak in jws_b64_signature 2026-03-12 09:18:42 +01:00
jwt.c BUG/MEDIUM: jwt: fix heap overflow in ECDSA signature DER conversion 2026-04-07 11:11:42 +02:00
lb_chash.c BUG/MEDIUM: lb-chash: always properly initialize lb_nodes with dynamic servers 2026-02-10 07:22:54 +01:00
lb_fas.c MINOR: proxies/servers: Calculate queueslength and use it. 2025-01-28 12:49:41 +01:00
lb_fwlc.c BUG/MEDIUM: fwlc: Handle memory allocation failures. 2025-10-01 18:13:33 +02:00
lb_fwrr.c MEDIUM: lb_fwrr: Don't start all thread groups on the same server. 2025-04-17 17:38:23 +02:00
lb_map.c MINOR: proxies/servers: Calculate queueslength and use it. 2025-01-28 12:49:41 +01:00
lb_ss.c MINOR: lbprm: implement true "sticky" balance algo 2024-03-29 17:08:37 +01:00
limits.c MINOR: limits: display the computed maxconn using ha_notice() 2025-11-20 18:38:09 +01:00
linuxcap.c MEDIUM: init: always warn when running as root without being asked to 2025-09-05 08:51:07 +02:00
listener.c MAJOR: mux-quic: activate QMux for frontend side 2026-04-02 14:02:05 +02:00
log.c MINOR: ssl/log: add keylog format variables and env vars 2026-04-01 16:28:49 +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 MINOR: mailers: warn if mailers are configured but not actually used 2025-06-27 16:41:18 +02:00
map.c BUG/MEDIUM: map/cli: CLI commands lack admin permission checks 2026-03-31 12:34:33 +02:00
mjson.c BUG/MINOR: mjson: make mystrtod() length-aware to prevent out-of-bounds reads 2026-03-17 17:08:28 +01:00
mqtt.c CLEANUP: mqtt: fix typo in MQTT_REMAINING_LENGHT_MAX_SIZE 2024-08-30 14:58:59 +02:00
mux_fcgi.c BUG/MEDIUM: mux-fcgi: prevent record-length truncation with large bufsize 2026-04-10 09:40:16 +02:00
mux_h1.c BUG/MEDIUM: mux-h1: Disable 0-copy forwarding when draining the request 2026-04-03 15:12:55 +02:00
mux_h2.c MINOR: mux-h2: report glitches on early RST_STREAM 2026-03-30 16:32:21 +02:00
mux_pt.c MAJOR: muxes: No longer use app_ops .wake() callback function from muxes 2026-03-10 15:10:34 +01:00
mux_quic.c BUG/MINOR: mux_quic: prevent QMux crash on qcc_io_send() error path 2026-04-13 09:11:08 +02:00
mux_quic_qstrm.c BUG/MINOR: do not crash on QMux reception of BLOCKED frames 2026-04-10 10:30:49 +02:00
mux_spop.c MINOR: connection: track mux calls to report their allocation context 2026-03-12 18:06:38 +01:00
mworker.c CLEANUP: mworker: fix tab/space mess in mworker_env_to_proc_list() 2026-03-19 18:01:06 +01:00
namespace.c BUG/MINOR: namespace: handle a possible strdup() failure 2024-12-10 08:05:34 +01:00
ncbmbuf.c MINOR: ncbmbuf: improve itbmap_next() code 2026-02-23 16:28:41 +01:00
ncbuf.c MINOR: ncbuf: missing malloc checks in standalone code 2023-05-12 09:45:30 +02:00
net_helper.c CLEANUP: net_helper: fix typo in comment 2026-04-02 11:29:54 +02:00
pattern.c BUG/MAJOR: set the correct generation ID in pat_ref_append(). 2025-12-31 00:29:47 +01:00
payload.c BUG/MEDIUM: payload: validate SNI name_len in req.ssl_sni 2026-04-07 10:50:04 +02:00
peers.c BUG/MINOR: peers: fix OOB heap write in dictionary cache update 2026-04-07 14:41:46 +02:00
pipe.c MEDIUM: tree-wide: replace most DECLARE_POOL with DECLARE_TYPED_POOL 2025-08-11 19:55:30 +02:00
pool.c CLEANUP: stats: drop stats.h / stats-t.h where not needed 2026-02-26 08:24:03 +01:00
proto_quic.c MINOR: quic: store source address for backend conns 2025-11-20 16:44:03 +01:00
proto_rhttp.c MINOR: connection: track mux calls to report their allocation context 2026-03-12 18:06:38 +01:00
proto_sockpair.c BUG/MINOR: sockpair: set FD_CLOEXEC on fd received via SCM_RIGHTS 2026-03-16 16:31:58 +01:00
proto_tcp.c MINOR: startup: Add HAVE_WORKING_TCP_MD5SIG in haproxy -vv 2026-02-12 18:02:19 +01:00
proto_udp.c BUG/MEDIUM: mworker/listener: ambiguous use of RX_F_INHERITED with shards 2025-12-11 18:09:47 +01:00
proto_uxdg.c MINOR: protocol: create abnsz socket address family 2024-10-29 12:14:50 +01:00
proto_uxst.c MINOR: sock: Add protocol and socket types parameters to sock_create_server_socket() 2025-06-11 18:37:34 +02:00
protocol.c MINOR: quic: rename "no-quic" to "tune.quic.listen" 2025-10-23 16:47:58 +02:00
proxy.c MEDIUM: filters: add "filter-sequence" directive 2026-04-03 12:10:27 +02:00
qmux_http.c MEDIUM: tree-wide: Rely on htx_xfer() instead of htx_xfer_blks() 2026-03-23 14:02:43 +01:00
qmux_trace.c MINOR: mux-quic: prepare traces support for QMux 2026-04-02 14:02:04 +02:00
qpack-dec.c BUG/MINOR: qpack: fix 62-bit overflow and 1-byte OOB reads in decoding 2026-03-20 19:40:11 +01:00
qpack-enc.c BUG/MINOR: h3: ensure that invalid status code are not encoded (FE side) 2025-07-15 18:39:23 +02:00
qpack-tbl.c CLEANUP: qpack: properly use the QPACK macros not HPACK ones in debug code 2022-11-24 15:38:26 +01:00
queue.c MINOR: queues: Check minconn first in srv_dynamic_maxconn() 2026-02-12 02:18:59 +01:00
quic_ack.c MEDIUM: tree-wide: replace most DECLARE_POOL with DECLARE_TYPED_POOL 2025-08-11 19:55:30 +02:00
quic_cc.c MINOR: quic: define quic_cc_algo as const 2025-12-01 15:05:41 +01:00
quic_cc_bbr.c MINOR: quic: define quic_cc_algo as const 2025-12-01 15:05:41 +01:00
quic_cc_cubic.c MINOR: quic: define quic_cc_algo as const 2025-12-01 15:05:41 +01:00
quic_cc_drs.c BUG/MINOR: quic: remove max_bw filter from delivery rate sampling 2024-12-13 14:42:43 +01:00
quic_cc_newreno.c MINOR: quic: define quic_cc_algo as const 2025-12-01 15:05:41 +01:00
quic_cc_nocc.c MINOR: quic: define quic_cc_algo as const 2025-12-01 15:05:41 +01:00
quic_cid.c CLEANUP: assorted typo fixes in the code, commits and doc 2025-12-25 19:45:29 +01:00
quic_cli.c BUG/MINOR: quic: fix uninit list on show quic handler 2025-11-25 14:50:19 +01:00
quic_conn.c MEDIUM: quic/mux-quic: adjust app-ops install 2026-03-03 16:22:57 +01:00
quic_enc.c TESTS: quic: useless param for b_quic_dec_int() 2025-10-15 09:58:03 +02:00
quic_fctl.c MINOR: mux-quic: define a flow control related type 2024-01-31 16:28:54 +01:00
quic_frame.c BUG/MINOR: quic: increment pos pointer on QMux transport params parsing 2026-04-10 10:20:52 +02:00
quic_loss.c MINOR: quic: split congestion controler options for FE/BE usage 2025-10-23 16:49:20 +02:00
quic_openssl_compat.c MINOR: quic: Fix build with USE_QUIC_OPENSSL_COMPAT 2026-02-03 04:05:34 +01:00
quic_pacing.c MINOR: quic: adapt credit based pacing to BBR 2025-01-23 17:41:07 +01:00
quic_retransmit.c MINOR: quic: prefer qc_is_back() usage over qc->target 2025-08-07 16:59:59 +02:00
quic_retry.c CLEANUP: quic-stats: include counters from quic_stats 2026-02-26 08:24:03 +01:00
quic_rules.c MINOR: actions: store the location of keywords registered via initcalls 2026-03-12 18:06:38 +01:00
quic_rx.c MINOR: quic: refactor frame parsing 2026-04-02 14:02:04 +02:00
quic_sock.c CLEANUP: stats: drop stats.h / stats-t.h where not needed 2026-02-26 08:24:03 +01:00
quic_ssl.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
quic_stats.c MEDIUM: counters: return aggregate extra counters in ->fill_stats() 2026-02-26 17:03:53 +01:00
quic_stream.c MINOR: quic: Use b_alloc_small() to allocate a small buffer 2026-03-23 14:02:42 +01:00
quic_tls.c BUG/MAJOR: quic: use ncbmbuf for CRYPTO handling 2025-10-22 15:04:41 +02:00
quic_token.c BUG/MAJOR: quic: reject invalid token 2026-02-12 09:09:44 +01:00
quic_tp.c MINOR: quic: implement QMux transport params frame parser/builder 2026-04-02 14:02:04 +02:00
quic_trace.c MINOR: quic: Add useful debugging traces in qc_idle_timer_do_rearm() 2025-12-08 10:40:59 +01:00
quic_tx.c MINOR: quic: refactor frame encoding 2026-04-02 14:02:04 +02:00
raw_sock.c MINOR: rawsock: introduce CO_RFL_TRY_HARDER to detect closures on complete reads 2025-10-01 10:23:01 +02:00
regex.c MINOR: regex: use a thread-local match pointer for pcre2 2025-10-13 16:56:43 +02:00
resolvers.c BUG/MINOR: resolvers: fix memory leak on AAAA additional records 2026-04-09 16:31:05 +02:00
ring.c OPTIM: ring: avoid reloading the tail_ofs value before the CAS in ring_write() 2025-09-18 15:27:32 +02:00
sample.c MEDIUM: otel: added OpenTelemetry filter skeleton 2026-04-13 09:23:26 +02:00
server.c MEDIUM: check: Revamp the way the protocol and xprt are determined 2026-04-08 18:41:48 +02:00
server_state.c MEDIUM: counters: Dynamically allocate per-thread group counters 2026-01-13 11:12:34 +01:00
session.c MINOR: xprt_qstrm: handle connection errors 2026-04-10 10:20:52 +02:00
sha1.c
shctx.c BUG/MEDIUM: shctx: Use the next block when data exactly filled a block 2026-02-18 09:44:15 +01:00
signal.c MEDIUM: tree-wide: replace most DECLARE_POOL with DECLARE_TYPED_POOL 2025-08-11 19:55:30 +02:00
sink.c MINOR: proxy: add refcount to proxies 2026-03-02 10:44:59 +01:00
slz.c BUG/MAJOR: slz: always make sure to limit fixed output to less than worst case literals 2026-04-08 19:14:25 +02:00
sock.c BUG/MINOR: sock: adjust accept() error messages for ENFILE and ENOMEM 2026-03-20 16:51:47 +01:00
sock_inet.c BUG/MEDIUM: mworker/listener: ambiguous use of RX_F_INHERITED with shards 2025-12-11 18:09:47 +01:00
sock_unix.c BUG/MEDIUM: mworker/listener: ambiguous use of RX_F_INHERITED with shards 2025-12-11 18:09:47 +01:00
ssl_ckch.c BUILD: ssl: make X509_NAME usage OpenSSL 4.0 ready 2026-03-11 17:00:59 +01:00
ssl_clienthello.c BUG/MINOR: quic/ssl: crash in ClientHello callback ssl traces 2025-12-08 10:40:59 +01:00
ssl_crtlist.c BUG/MINOR: ssl: error with ssl-f-use when no "crt" 2026-02-16 18:41:40 +01:00
ssl_gencert.c BUILD: ssl: make X509_NAME usage OpenSSL 4.0 ready 2026-03-11 17:00:59 +01:00
ssl_ocsp.c BUG/MEDIUM: ssl/ocsp: ocsp commands are missing permission checks 2026-03-31 12:18:26 +02:00
ssl_sample.c MINOR: ssl: add the ssl_fc_crtname sample fetch 2026-04-03 10:41:00 +02:00
ssl_sock.c BUG/MINOR: ssl: fix memory leak in ssl_fc_crtname by using SSL_CTX ex_data index 2026-04-03 11:00:36 +02:00
ssl_trace.c BUILD: ssl: make X509_NAME usage OpenSSL 4.0 ready 2026-03-11 17:00:59 +01:00
ssl_utils.c BUILD: ssl: make X509_NAME usage OpenSSL 4.0 ready 2026-03-11 17:00:59 +01:00
stats-file.c MEDIUM: stats-file/clock: automatically update now_offset based on shared clock 2026-03-18 11:18:33 +01:00
stats-html.c MEDIUM: stats: Hide the version by default and add stats-showversion 2026-04-01 14:39:28 +02:00
stats-json.c BUG/MINOR: stats-json: Define JSON_INT_MAX as a signed integer 2025-02-06 17:19:49 +01:00
stats-proxy.c MINOR: stats: protect proxy iteration via watcher 2026-02-27 10:28:24 +01:00
stats.c MINOR: stats: protect proxy iteration via watcher 2026-02-27 10:28:24 +01:00
stconn.c MINOR: stconn: flag the stream endpoint descriptor when the app has started 2026-03-30 16:27:53 +02:00
stick_table.c CLEANUP: fix typos and spelling in comments and documentation 2026-03-30 09:24:19 +02:00
stream.c MINOR: stconn: flag the stream endpoint descriptor when the app has started 2026-03-30 16:27:53 +02:00
systemd.c BUILD: systemd: fix usage of reserved name "sun" in the address field 2024-11-25 08:09:09 +01:00
task.c BUILD: sched: fix leftover of debugging test in single-run changes 2026-03-23 07:29:43 +01:00
tcp_act.c MEDIUM: stats: consider that shared stats pointers may be NULL 2025-09-18 16:49:51 +02:00
tcp_rules.c BUG/MINOR: config: Properly test warnif_misplaced_* return values 2026-03-27 07:35:25 +01:00
tcp_sample.c MINOR: tcp-sample: permit retrieving tcp_info from the connection/session stage 2026-01-11 15:48:20 +01:00
tcpcheck.c MEDIUM: check: Revamp the way the protocol and xprt are determined 2026-04-08 18:41:48 +02:00
thread.c MEDIUM: proxy: add lock for global accesses during proxy free 2026-03-02 14:09:25 +01:00
time.c REORG: time: move time-keeping code and variables to clock.c 2021-10-08 17:22:26 +02:00
tools.c BUILD: tools: potential null pointer dereference in dl_collect_libs_cb 2026-03-23 21:52:56 +01:00
trace.c MINOR: traces: defer processing of "-dt" options 2026-03-13 09:13:24 +01:00
uri_auth.c CLEANUP: stats: drop stats.h / stats-t.h where not needed 2026-02-26 08:24:03 +01:00
uri_normalizer.c BUILD: tree-wide: cast arguments to tolower/toupper to unsigned char (2) 2024-07-18 13:29:52 +02:00
vars.c MINOR: vars: implement dump_all_vars() sample fetch 2026-01-21 10:44:19 +01:00
version.c REORG: version: move the remaining BUILD_* stuff from haproxy.c to version.c 2025-01-20 17:53:55 +01:00
wdt.c BUG/MEDIUM: wdt: improve stuck task detection accuracy 2025-10-01 10:18:53 +02:00
xprt_handshake.c MINOR: connection: track mux calls to report their allocation context 2026-03-12 18:06:38 +01:00
xprt_qstrm.c BUG/MINOR: xprt_qstrm: do not parse record length on read again 2026-04-13 09:11:08 +02:00
xprt_quic.c MINOR: quic: use server cache for ALPN on BE side 2026-03-03 16:23:03 +01:00