haproxy.git
7 months agoBUG/MAJOR: h3: reject header values containing invalid chars
Willy Tarreau [Tue, 8 Aug 2023 15:18:27 +0000 (17:18 +0200)]
BUG/MAJOR: h3: reject header values containing invalid chars

Origin: https://git.haproxy.org/?p=haproxy-2.6.git;a=commit;h=20a35c4d505475215122d37405ce173075338032

In practice it's exactly the same for h3 as 54f53ef7c ("BUG/MAJOR: h2:
reject header values containing invalid chars") was for h2: we must
make sure never to accept NUL/CR/LF in any header value because this
may be used to construct splitted headers on the backend. Hence we
apply the same solution. Here pseudo-headers, headers and trailers are
checked separately, which explains why we have 3 locations instead of
2 for h2 (+1 for response which we don't have here).

This is marked major for consistency and due to the impact if abused,
but the reality is that at the time of writing, this problem is limited
by the scarcity of the tools which would permit to build such a request
in the first place. But this may change over time.

This must be backported to 2.6. This depends on the following commit
that exposes the filtering function:

    REORG: http: move has_forbidden_char() from h2.c to http.h

(cherry picked from commit d13a80abb7c1badaa42045c37cfff79f24f05726)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
(cherry picked from commit 0404bf14c900d6ac879ec432a198435e0741d835)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
(cherry picked from commit f58b63af68f239464c29e698a34f08ff3eef862f)
 [ad: no http/3 trailer support in 2.6]
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
Gbp-Pq: Name BUG-MAJOR-h3-reject-header-values-containing-invalid.patch

7 months agoREORG: http: move has_forbidden_char() from h2.c to http.h
Willy Tarreau [Tue, 8 Aug 2023 15:00:50 +0000 (17:00 +0200)]
REORG: http: move has_forbidden_char() from h2.c to http.h

Origin: https://git.haproxy.org/?p=haproxy-2.6.git;a=commit;h=4a776fd01560a8dfa7a57b30b4d5249c8da7b12c

This function is not H2 specific but rather generic to HTTP. We'll
need it in H3 soon, so let's move it to HTTP and rename it to
http_header_has_forbidden_char().

(cherry picked from commit d4069f3cee0f6e94afaec518b6373dd368073f52)
 [ad: backported for next patch BUG/MAJOR: h3: reject header values
 containing invalid chars]
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
(cherry picked from commit 21c4ffd025115058994a3e2765c17fc3cee52f90)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
(cherry picked from commit 9c0bc4f201cf58c10706416cb4807c0f4794f8ac)
Signed-off-by: Amaury Denoyelle <adenoyelle@haproxy.com>
Gbp-Pq: Name REORG-http-move-has_forbidden_char-from-h2.c-to-http.patch

7 months agoreproducible
Debian HAProxy Maintainers [Tue, 29 Apr 2025 13:56:20 +0000 (16:56 +0300)]
reproducible

Gbp-Pq: Name reproducible.patch

7 months agohaproxy.service: make systemd bind /dev/log inside chroot
Vincent Bernat [Thu, 25 Nov 2021 20:35:48 +0000 (21:35 +0100)]
haproxy.service: make systemd bind /dev/log inside chroot

This enables logging to work without rsyslog being present.

Gbp-Pq: Name haproxy.service-make-systemd-bind-dev-log-inside-chroot.patch

7 months agoAdd documentation field to the systemd unit
Debian HAProxy Maintainers [Sun, 25 Mar 2018 09:31:50 +0000 (11:31 +0200)]
Add documentation field to the systemd unit

Forwarded: no
Last-Update: 2014-01-03

Gbp-Pq: Name haproxy.service-add-documentation.patch

7 months agoStart after rsyslog.service
Apollon Oikonomopoulos [Sun, 25 Mar 2018 09:31:50 +0000 (11:31 +0200)]
Start after rsyslog.service

As HAProxy is running chrooted by default, we rely on an additional syslog
socket created by rsyslog inside the chroot for logging. As this socket cannot
trigger syslog activation, we explicitly order HAProxy after rsyslog.service.
Note that we are not using syslog.service here, since the additional socket is
rsyslog-specific.
Forwarded: no
Last-Update: 2017-12-01

Gbp-Pq: Name haproxy.service-start-after-syslog.patch

7 months agohaproxy (2.6.12-1+deb12u2) bookworm; urgency=medium
Adrian Bunk [Tue, 29 Apr 2025 13:56:20 +0000 (16:56 +0300)]
haproxy (2.6.12-1+deb12u2) bookworm; urgency=medium

  * Non-maintainer upload.
  * CVE-2025-32464: heap buffer overflow in sample_conv_regsub()
    (Closes: #1102673)

[dgit import unpatched haproxy 2.6.12-1+deb12u2]

7 months agoImport haproxy_2.6.12-1+deb12u2.debian.tar.xz
Adrian Bunk [Tue, 29 Apr 2025 13:56:20 +0000 (16:56 +0300)]
Import haproxy_2.6.12-1+deb12u2.debian.tar.xz

[dgit import tarball haproxy 2.6.12-1+deb12u2 haproxy_2.6.12-1+deb12u2.debian.tar.xz]

2 years agoImport haproxy_2.6.12.orig.tar.gz
Vincent Bernat [Sat, 1 Apr 2023 09:05:57 +0000 (11:05 +0200)]
Import haproxy_2.6.12.orig.tar.gz

[dgit import orig haproxy_2.6.12.orig.tar.gz]