Raspbian automatic forward porter [Fri, 6 Sep 2024 23:04:19 +0000 (00:04 +0100)]
Merge version 7.88.1-10+rpi1+deb12u6 and 7.88.1-10+deb12u7 to produce 7.88.1-10+rpi1+deb12u7
Carlos Henrique Lima Melara [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Merge curl (7.88.1-10+deb12u7) import into refs/heads/workingbranch
Ramakrishnan Muthukrishnan [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Build with NSS.
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2015-08-12
Gbp-Pq: Name 99_nss.patch
Ramakrishnan Muthukrishnan [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Build with GnuTLS.
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2018-05-23
Gbp-Pq: Name 90_gnutls.patch
Stefan Eissing [Tue, 30 Jul 2024 14:40:48 +0000 (16:40 +0200)]
x509asn1: unittests and fixes for gtime2str
Fix issues in GTime2str() and add unit test cases to verify correct
behaviour.
Follow-up to
3c914bc6801
Closes #14316
Backported to Debian by Carlos Henrique Lima Melara <charles@debian.org>.
Changes:
- In this version, GTime2str doesn't return CURLcode, so change that to NULL.
- Also change test helper function to match the correct type and pass the
correct arguments. In this version, GTime2str doesn't take struct dynbuf *.
It's aimed to not FTBFS if someone build the package with --enable-debug.
Gbp-Pq: Name CVE-2024-7264-1.patch
Daniel Stenberg [Tue, 30 Jul 2024 08:05:17 +0000 (10:05 +0200)]
x509asn1: clean up GTime2str
Co-authored-by: Stefan Eissing
Reported-by: Dov Murik
Closes #14307
Backported to Debian by Carlos Henrique Lima Melara <charles@debian.org>.
Changes:
- In this version, GTime2str doesn't return CURLcode, so change that to NULL.
Gbp-Pq: Name CVE-2024-7264-0.patch
Stefan Eissing [Wed, 6 Mar 2024 08:36:08 +0000 (09:36 +0100)]
[PATCH] http2: push headers better cleanup
- provide common cleanup method for push headers
Closes #13054
Backported by: Guilherme Puida Moreira <guilherme@puida.xyz>:
* Changed h2_stream_ctx to HTTP in free_push_headers.
Gbp-Pq: Name CVE-2024-2398.patch
Daniel Gustafsson [Tue, 27 Feb 2024 14:43:56 +0000 (15:43 +0100)]
[PATCH] setopt: Fix disabling all protocols
When disabling all protocols without enabling any, the resulting
set of allowed protocols remained the default set. Clearing the
allowed set before inspecting the passed value from --proto make
the set empty even in the errorpath of no protocols enabled.
Co-authored-by: Dan Fandrich <dan@telarity.com>
Reported-by: Dan Fandrich <dan@telarity.com>
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Closes: #13004
Backported by: Guilherme Puida Moreira <guilherme@puida.xyz>
* Small change in the Makefile to add a new test.
Gbp-Pq: Name CVE-2024-2004.patch
Daniel Stenberg [Thu, 23 Nov 2023 07:23:17 +0000 (08:23 +0100)]
[PATCH] fopen: create short(er) temporary file name
Only using random letters in the name plus a ".tmp" extension. Not by
appending characters to the final file name.
Reported-by: Maksymilian Arciemowicz
Closes #12388
Backported by: Samuel Henrique <samueloph@debian.org>:
* The function Curl_rand_alnum was renamed to Curl_rand_hex
Gbp-Pq: Name CVE-2023-46219.patch
Daniel Stenberg [Thu, 23 Nov 2023 07:15:47 +0000 (08:15 +0100)]
[PATCH] cookie: lowercase the domain names before PSL checks
Reported-by: Harry Sintonen
Closes #12387
Backported by: Samuel Henrique <samueloph@debian.org>:
* Update signature of function "bad_domain"
Gbp-Pq: Name CVE-2023-46218.patch
Daniel Stenberg [Thu, 14 Sep 2023 21:28:32 +0000 (23:28 +0200)]
[PATCH] cookie: remove unnecessary struct fields
Plus: reduce the hash table size from 256 to 63. It seems unlikely to
make much of a speed difference for most use cases but saves 1.5KB of
data per instance.
Closes #11862
Backported by: Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-38546.patch
Jay Satiro [Sat, 30 Sep 2023 07:40:02 +0000 (03:40 -0400)]
[PATCH] socks: return error if hostname too long for remote resolve
Prior to this change the state machine attempted to change the remote
resolve to a local resolve if the hostname was longer than 255
characters. Unfortunately that did not work as intended and caused a
security issue.
Name resolvers cannot resolve hostnames longer than 255 characters.
Bug: https://curl.se/docs/CVE-2023-38545.html
Backported by: Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-38545.patch
Daniel Stenberg [Wed, 2 Aug 2023 21:34:48 +0000 (23:34 +0200)]
[PATCH] http: return error when receiving too large header set
To avoid abuse. The limit is set to 300 KB for the accumulated size of
all received HTTP headers for a single response. Incomplete research
suggests that Chrome uses a 256-300 KB limit, while Firefox allows up to
1MB.
Closes #11582
Backport to Debian by Carlos Henrique Lima Melara <charlesmelara@riseup.net>
Gbp-Pq: Name CVE-2023-38039.patch
Alessandro Ghedini [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Fix Autotools not enabling OpenLDAP-specific functionality
Origin: upstream, https://github.com/curl/curl/commit/
0ac6108856b9d500bc376d1d7e0b648d15499837.patch
Bug: https://github.com/curl/curl/issues/11372
Applied-Upstream: 8.2.0, https://github.com/curl/curl/commit/
0ac6108856b9d500bc376d1d7e0b648d15499837
Reviewed-By: John Scott <jscott@posteo.net>
Last-Update: 2023-07-25
The non-OpenLDAP code paths are less tested, less featureful, less secure,
and omitted in the build system by accident. It has been discovered that this
also mitigates curl not being able to make LDIF output when attributes have
binary values.
Gbp-Pq: Name Use-OpenLDAP-specific-functionality.patch
SaltyMilk [Mon, 10 Jul 2023 19:43:28 +0000 (21:43 +0200)]
[PATCH] fopen: optimize
Closes #11419
Gbp-Pq: Name CVE-2023-32001.patch
Daniel Stenberg [Tue, 25 Apr 2023 06:28:01 +0000 (08:28 +0200)]
[PATCH] lib: unify the upload/method handling
By making sure we set state.upload based on the set.method value and not
independently as set.upload, we reduce confusion and mixup risks, both
internally and externally.
Closes #11017
Gbp-Pq: Name CVE-2023-28322.patch
Daniel Stenberg [Mon, 24 Apr 2023 19:07:02 +0000 (21:07 +0200)]
[PATCH] hostcheck: fix host name wildcard checking
The leftmost "label" of the host name can now only match against single
'*'. Like the browsers have worked for a long time.
- extended unit test 1397 for this
- move some SOURCE variables from unit/Makefile.am to unit/Makefile.inc
Reported-by: Hiroki Kurosawa
Closes #11018
Backported to Debian by Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-28321.patch
Daniel Stenberg [Tue, 16 May 2023 21:40:42 +0000 (23:40 +0200)]
[PATCH] hostip: include easy_lock.h before using GLOBAL_INIT_IS_THREADSAFE
Since that header file is the only place that define can be defined.
Reported-by: Marc Deslauriers
Follow-up to
13718030ad4b3209
Closes #11121
Gbp-Pq: Name CVE-2023-28320-1.patch
Harry Sintonen [Tue, 25 Apr 2023 07:22:26 +0000 (09:22 +0200)]
[PATCH] hostip: add locks around use of global buffer for alarm()
When building with the sync name resolver and timeout ability we now
require thread-safety to be present to enable it.
Closes #11030
Gbp-Pq: Name CVE-2023-28320.patch
Daniel Stenberg [Mon, 8 May 2023 12:33:54 +0000 (14:33 +0200)]
[PATCH] libssh2: free fingerprint better
Reported-by: Wei Chong Tan
Closes #11088
Gbp-Pq: Name CVE-2023-28319.patch
Daniel Stenberg [Thu, 9 Mar 2023 17:01:34 +0000 (18:01 +0100)]
[PATCH] CURLSHOPT_SHARE.3: HSTS sharing is not thread-safe
Reported-by: Hiroki Kurosawa
Closes #10732
Gbp-Pq: Name CVE-2023-27537.patch
Daniel Stenberg [Fri, 10 Mar 2023 08:22:43 +0000 (09:22 +0100)]
[PATCH] url: only reuse connections with same GSS delegation
Reported-by: Harry Sintonen
Closes #10731
Gbp-Pq: Name CVE-2023-27536.patch
Daniel Stenberg [Thu, 9 Mar 2023 16:47:06 +0000 (17:47 +0100)]
[PATCH] ftp: add more conditions for connection reuse
Reported-by: Harry Sintonen
Closes #10730
Gbp-Pq: Name CVE-2023-27535.patch
Daniel Stenberg [Fri, 10 Mar 2023 07:22:51 +0000 (08:22 +0100)]
[PATCH] url: fix the SSH connection reuse check
Reported-by: Harry Sintonen
Closes #10735
Gbp-Pq: Name CVE-2023-27538.patch
Daniel Stenberg [Thu, 9 Mar 2023 15:22:11 +0000 (16:22 +0100)]
[PATCH] curl_path: create the new path with dynbuf
Closes #10729
Gbp-Pq: Name CVE-2023-27534.patch
Daniel Stenberg [Mon, 6 Mar 2023 11:07:33 +0000 (12:07 +0100)]
[PATCH] telnet: only accept option arguments in ascii
To avoid embedded telnet negotiation commands etc.
Reported-by: Harry Sintonen
Closes #10728
Backported to Debian by Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-27533.patch
Daniel Stenberg [Sat, 30 Mar 2024 10:14:54 +0000 (11:14 +0100)]
openldap: create ldap URLs correctly for IPv6 addresses
Reported-by: Sergio Durigan Junior
Fixes #13228
Closes #13235
More context:
When the user specified an IPv6 address to be used as an LDAP server,
curl will fail to properly enclose it in square brackets, which causes
the connection to fail because the host address cannot be
distinguished from the port:
$ curl -v ldap://[fd42:be5:e632:a6b3:216:3eff:feb1:5bc4]:389
...
* LDAP local: Cannot connect to ldap://fd42:be5:e632:a6b3:216:3eff:feb1:5bc4:389, Bad parameter to an ldap routine
...
Fix this by always enclosing the IPv6 address in square brackets.
Origin: upstream, https://github.com/curl/curl/commit/
56935a7dada6975d5a46aa494de0af195e4e8659
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
1053643
Gbp-Pq: Name openldap-create-ldap-URLs-correctly-for-IPv6-addresses.patch
Stefan Eissing [Tue, 28 Feb 2023 09:07:21 +0000 (10:07 +0100)]
[PATCH] Fixing unix domain socket use in https connects.
- refs #10633, when h2/h3 eyeballing was involved, unix domain socket
configurations were not honoured
- configuring --unix-socket will disable HTTP/3 as candidate for eyeballing
- combinatino of --unix-socket and --http3-only will fail during initialisation
- adding pytest test_11 to reproduce
Gbp-Pq: Name fix-unix-domain-socket.patch
Sergio Durigan Junior [Sun, 5 Mar 2023 17:00:03 +0000 (12:00 -0500)]
Use correct path when loading libnss{pem,ckbi}.so
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=726073
Gbp-Pq: Name Use-correct-path-when-loading-libnss-pem-ckbi-.so.patch
Simon McVittie [Tue, 22 Nov 2022 21:20:51 +0000 (21:20 +0000)]
Remove curl's LDFLAGS from curl-config --static-libs
On current Debian bookworm, the LDFLAGS consist of
-L/usr/lib/${triplet}/mit-krb5 originating from
`pkg-config --libs-only-L mit-krb5-gssapi` from krb5-multidev, plus
some linker options that are intended for curl itself rather than for
dependent packages. None of these are really desirable, and they create
divergence between architectures that would prevent libcurl-*-dev from
being Multi-Arch: same.
The -L flag is not really needed, for the same reason that -L@libdir@
isn't. curl Build-Depends on libkrb5-dev, which doesn't need a special
-L flag to find libgssapi_krb5, and the various libcurl-*-dev packages
have Suggests on libkrb5-dev rather than on krb5-multidev for static
linking.
The other options (currently `-Wl,-z-relro -Wl,-z,now`) are intended
for libcurl itself, and if dependent packages want those options then
they should set them from their own packaging.
Bug-Debian: https://bugs.debian.org/
1024668
Forwarded: not-needed
Signed-off-by: Simon McVittie <smcv@collabora.com>
Gbp-Pq: Name Remove-curl-s-LDFLAGS-from-curl-config-static-libs.patch
Benjamin Moody [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
In order to (partially) multi-arch-ify curl-config, remove all
Origin: vendor
Bug-Debian: http://bugs.debian.org/731998
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2017-01-10
mention of @includedir@ and @libdir@ from the script. On Debian, the actual
header and library directories are architecture-dependent, but will always be
in the C compiler's default search path, so -I and -L options are not
necessary (and may be harmful in multi-arch environments.)
Gbp-Pq: Name 11_omit-directories-from-config.patch
Simon McVittie [Tue, 22 Nov 2022 20:43:41 +0000 (20:43 +0000)]
build: Divide mit-krb5-gssapi link flags between LDFLAGS and LIBS
From the comments nearby about not having --libs-only-L, it looks as
though the intention was to apply a split like this to all dependency
libraries where possible, and the only reason it was not done for
Kerberos is that krb5-config doesn't have that feature and pkg-config
was originally not supported here. For example, zlib, libssh and librtmp
all have their flags from pkg-config split in this way.
Now that pkg-config is supported here, we can do the intended split.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Gbp-Pq: Name build-Divide-mit-krb5-gssapi-link-flags-between-LDFLAGS-a.patch
Alessandro Ghedini [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Enable zsh completion generation
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2016-08-03
Gbp-Pq: Name 08_enable-zsh.patch
Alessandro Ghedini [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Work around libtool --as-needed reordering bug
Origin: vendor
Bug-Debian: http://bugs.debian.org/347650
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2016-08-03
Gbp-Pq: Name 04_workaround_as_needed_bug.patch
Carlos Henrique Lima Melara [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
curl (7.88.1-10+deb12u7) bookworm; urgency=medium
* Team upload.
* debian/patches/CVE-2024-7264*: import and backport upstream patches to fix
CVE-2024-7264 - ASN.1 date parser overread. (Closes: #
1077656)
[dgit import unpatched curl 7.88.1-10+deb12u7]
Carlos Henrique Lima Melara [Sat, 17 Aug 2024 17:06:29 +0000 (14:06 -0300)]
Import curl_7.88.1-10+deb12u7.debian.tar.xz
[dgit import tarball curl 7.88.1-10+deb12u7 curl_7.88.1-10+deb12u7.debian.tar.xz]
Raspbian automatic forward porter [Thu, 4 Jul 2024 17:24:53 +0000 (18:24 +0100)]
Merge version 7.88.1-10+rpi1+deb12u5 and 7.88.1-10+deb12u6 to produce 7.88.1-10+rpi1+deb12u6
Guilherme Puida Moreira [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Merge curl (7.88.1-10+deb12u6) import into refs/heads/workingbranch
Ramakrishnan Muthukrishnan [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Build with NSS.
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2015-08-12
Gbp-Pq: Name 99_nss.patch
Ramakrishnan Muthukrishnan [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Build with GnuTLS.
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2018-05-23
Gbp-Pq: Name 90_gnutls.patch
Stefan Eissing [Wed, 6 Mar 2024 08:36:08 +0000 (09:36 +0100)]
[PATCH] http2: push headers better cleanup
- provide common cleanup method for push headers
Closes #13054
Backported by: Guilherme Puida Moreira <guilherme@puida.xyz>:
* Changed h2_stream_ctx to HTTP in free_push_headers.
Gbp-Pq: Name CVE-2024-2398.patch
Daniel Gustafsson [Tue, 27 Feb 2024 14:43:56 +0000 (15:43 +0100)]
[PATCH] setopt: Fix disabling all protocols
When disabling all protocols without enabling any, the resulting
set of allowed protocols remained the default set. Clearing the
allowed set before inspecting the passed value from --proto make
the set empty even in the errorpath of no protocols enabled.
Co-authored-by: Dan Fandrich <dan@telarity.com>
Reported-by: Dan Fandrich <dan@telarity.com>
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
Closes: #13004
Backported by: Guilherme Puida Moreira <guilherme@puida.xyz>
* Small change in the Makefile to add a new test.
Gbp-Pq: Name CVE-2024-2004.patch
Daniel Stenberg [Thu, 23 Nov 2023 07:23:17 +0000 (08:23 +0100)]
[PATCH] fopen: create short(er) temporary file name
Only using random letters in the name plus a ".tmp" extension. Not by
appending characters to the final file name.
Reported-by: Maksymilian Arciemowicz
Closes #12388
Backported by: Samuel Henrique <samueloph@debian.org>:
* The function Curl_rand_alnum was renamed to Curl_rand_hex
Gbp-Pq: Name CVE-2023-46219.patch
Daniel Stenberg [Thu, 23 Nov 2023 07:15:47 +0000 (08:15 +0100)]
[PATCH] cookie: lowercase the domain names before PSL checks
Reported-by: Harry Sintonen
Closes #12387
Backported by: Samuel Henrique <samueloph@debian.org>:
* Update signature of function "bad_domain"
Gbp-Pq: Name CVE-2023-46218.patch
Daniel Stenberg [Thu, 14 Sep 2023 21:28:32 +0000 (23:28 +0200)]
[PATCH] cookie: remove unnecessary struct fields
Plus: reduce the hash table size from 256 to 63. It seems unlikely to
make much of a speed difference for most use cases but saves 1.5KB of
data per instance.
Closes #11862
Backported by: Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-38546.patch
Jay Satiro [Sat, 30 Sep 2023 07:40:02 +0000 (03:40 -0400)]
[PATCH] socks: return error if hostname too long for remote resolve
Prior to this change the state machine attempted to change the remote
resolve to a local resolve if the hostname was longer than 255
characters. Unfortunately that did not work as intended and caused a
security issue.
Name resolvers cannot resolve hostnames longer than 255 characters.
Bug: https://curl.se/docs/CVE-2023-38545.html
Backported by: Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-38545.patch
Daniel Stenberg [Wed, 2 Aug 2023 21:34:48 +0000 (23:34 +0200)]
[PATCH] http: return error when receiving too large header set
To avoid abuse. The limit is set to 300 KB for the accumulated size of
all received HTTP headers for a single response. Incomplete research
suggests that Chrome uses a 256-300 KB limit, while Firefox allows up to
1MB.
Closes #11582
Backport to Debian by Carlos Henrique Lima Melara <charlesmelara@riseup.net>
Gbp-Pq: Name CVE-2023-38039.patch
Alessandro Ghedini [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Fix Autotools not enabling OpenLDAP-specific functionality
Origin: upstream, https://github.com/curl/curl/commit/
0ac6108856b9d500bc376d1d7e0b648d15499837.patch
Bug: https://github.com/curl/curl/issues/11372
Applied-Upstream: 8.2.0, https://github.com/curl/curl/commit/
0ac6108856b9d500bc376d1d7e0b648d15499837
Reviewed-By: John Scott <jscott@posteo.net>
Last-Update: 2023-07-25
The non-OpenLDAP code paths are less tested, less featureful, less secure,
and omitted in the build system by accident. It has been discovered that this
also mitigates curl not being able to make LDIF output when attributes have
binary values.
Gbp-Pq: Name Use-OpenLDAP-specific-functionality.patch
SaltyMilk [Mon, 10 Jul 2023 19:43:28 +0000 (21:43 +0200)]
[PATCH] fopen: optimize
Closes #11419
Gbp-Pq: Name CVE-2023-32001.patch
Daniel Stenberg [Tue, 25 Apr 2023 06:28:01 +0000 (08:28 +0200)]
[PATCH] lib: unify the upload/method handling
By making sure we set state.upload based on the set.method value and not
independently as set.upload, we reduce confusion and mixup risks, both
internally and externally.
Closes #11017
Gbp-Pq: Name CVE-2023-28322.patch
Daniel Stenberg [Mon, 24 Apr 2023 19:07:02 +0000 (21:07 +0200)]
[PATCH] hostcheck: fix host name wildcard checking
The leftmost "label" of the host name can now only match against single
'*'. Like the browsers have worked for a long time.
- extended unit test 1397 for this
- move some SOURCE variables from unit/Makefile.am to unit/Makefile.inc
Reported-by: Hiroki Kurosawa
Closes #11018
Backported to Debian by Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-28321.patch
Daniel Stenberg [Tue, 16 May 2023 21:40:42 +0000 (23:40 +0200)]
[PATCH] hostip: include easy_lock.h before using GLOBAL_INIT_IS_THREADSAFE
Since that header file is the only place that define can be defined.
Reported-by: Marc Deslauriers
Follow-up to
13718030ad4b3209
Closes #11121
Gbp-Pq: Name CVE-2023-28320-1.patch
Harry Sintonen [Tue, 25 Apr 2023 07:22:26 +0000 (09:22 +0200)]
[PATCH] hostip: add locks around use of global buffer for alarm()
When building with the sync name resolver and timeout ability we now
require thread-safety to be present to enable it.
Closes #11030
Gbp-Pq: Name CVE-2023-28320.patch
Daniel Stenberg [Mon, 8 May 2023 12:33:54 +0000 (14:33 +0200)]
[PATCH] libssh2: free fingerprint better
Reported-by: Wei Chong Tan
Closes #11088
Gbp-Pq: Name CVE-2023-28319.patch
Daniel Stenberg [Thu, 9 Mar 2023 17:01:34 +0000 (18:01 +0100)]
[PATCH] CURLSHOPT_SHARE.3: HSTS sharing is not thread-safe
Reported-by: Hiroki Kurosawa
Closes #10732
Gbp-Pq: Name CVE-2023-27537.patch
Daniel Stenberg [Fri, 10 Mar 2023 08:22:43 +0000 (09:22 +0100)]
[PATCH] url: only reuse connections with same GSS delegation
Reported-by: Harry Sintonen
Closes #10731
Gbp-Pq: Name CVE-2023-27536.patch
Daniel Stenberg [Thu, 9 Mar 2023 16:47:06 +0000 (17:47 +0100)]
[PATCH] ftp: add more conditions for connection reuse
Reported-by: Harry Sintonen
Closes #10730
Gbp-Pq: Name CVE-2023-27535.patch
Daniel Stenberg [Fri, 10 Mar 2023 07:22:51 +0000 (08:22 +0100)]
[PATCH] url: fix the SSH connection reuse check
Reported-by: Harry Sintonen
Closes #10735
Gbp-Pq: Name CVE-2023-27538.patch
Daniel Stenberg [Thu, 9 Mar 2023 15:22:11 +0000 (16:22 +0100)]
[PATCH] curl_path: create the new path with dynbuf
Closes #10729
Gbp-Pq: Name CVE-2023-27534.patch
Daniel Stenberg [Mon, 6 Mar 2023 11:07:33 +0000 (12:07 +0100)]
[PATCH] telnet: only accept option arguments in ascii
To avoid embedded telnet negotiation commands etc.
Reported-by: Harry Sintonen
Closes #10728
Backported to Debian by Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-27533.patch
Daniel Stenberg [Sat, 30 Mar 2024 10:14:54 +0000 (11:14 +0100)]
openldap: create ldap URLs correctly for IPv6 addresses
Reported-by: Sergio Durigan Junior
Fixes #13228
Closes #13235
More context:
When the user specified an IPv6 address to be used as an LDAP server,
curl will fail to properly enclose it in square brackets, which causes
the connection to fail because the host address cannot be
distinguished from the port:
$ curl -v ldap://[fd42:be5:e632:a6b3:216:3eff:feb1:5bc4]:389
...
* LDAP local: Cannot connect to ldap://fd42:be5:e632:a6b3:216:3eff:feb1:5bc4:389, Bad parameter to an ldap routine
...
Fix this by always enclosing the IPv6 address in square brackets.
Origin: upstream, https://github.com/curl/curl/commit/
56935a7dada6975d5a46aa494de0af195e4e8659
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=
1053643
Gbp-Pq: Name openldap-create-ldap-URLs-correctly-for-IPv6-addresses.patch
Stefan Eissing [Tue, 28 Feb 2023 09:07:21 +0000 (10:07 +0100)]
[PATCH] Fixing unix domain socket use in https connects.
- refs #10633, when h2/h3 eyeballing was involved, unix domain socket
configurations were not honoured
- configuring --unix-socket will disable HTTP/3 as candidate for eyeballing
- combinatino of --unix-socket and --http3-only will fail during initialisation
- adding pytest test_11 to reproduce
Gbp-Pq: Name fix-unix-domain-socket.patch
Sergio Durigan Junior [Sun, 5 Mar 2023 17:00:03 +0000 (12:00 -0500)]
Use correct path when loading libnss{pem,ckbi}.so
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=726073
Gbp-Pq: Name Use-correct-path-when-loading-libnss-pem-ckbi-.so.patch
Simon McVittie [Tue, 22 Nov 2022 21:20:51 +0000 (21:20 +0000)]
Remove curl's LDFLAGS from curl-config --static-libs
On current Debian bookworm, the LDFLAGS consist of
-L/usr/lib/${triplet}/mit-krb5 originating from
`pkg-config --libs-only-L mit-krb5-gssapi` from krb5-multidev, plus
some linker options that are intended for curl itself rather than for
dependent packages. None of these are really desirable, and they create
divergence between architectures that would prevent libcurl-*-dev from
being Multi-Arch: same.
The -L flag is not really needed, for the same reason that -L@libdir@
isn't. curl Build-Depends on libkrb5-dev, which doesn't need a special
-L flag to find libgssapi_krb5, and the various libcurl-*-dev packages
have Suggests on libkrb5-dev rather than on krb5-multidev for static
linking.
The other options (currently `-Wl,-z-relro -Wl,-z,now`) are intended
for libcurl itself, and if dependent packages want those options then
they should set them from their own packaging.
Bug-Debian: https://bugs.debian.org/
1024668
Forwarded: not-needed
Signed-off-by: Simon McVittie <smcv@collabora.com>
Gbp-Pq: Name Remove-curl-s-LDFLAGS-from-curl-config-static-libs.patch
Benjamin Moody [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
In order to (partially) multi-arch-ify curl-config, remove all
Origin: vendor
Bug-Debian: http://bugs.debian.org/731998
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2017-01-10
mention of @includedir@ and @libdir@ from the script. On Debian, the actual
header and library directories are architecture-dependent, but will always be
in the C compiler's default search path, so -I and -L options are not
necessary (and may be harmful in multi-arch environments.)
Gbp-Pq: Name 11_omit-directories-from-config.patch
Simon McVittie [Tue, 22 Nov 2022 20:43:41 +0000 (20:43 +0000)]
build: Divide mit-krb5-gssapi link flags between LDFLAGS and LIBS
From the comments nearby about not having --libs-only-L, it looks as
though the intention was to apply a split like this to all dependency
libraries where possible, and the only reason it was not done for
Kerberos is that krb5-config doesn't have that feature and pkg-config
was originally not supported here. For example, zlib, libssh and librtmp
all have their flags from pkg-config split in this way.
Now that pkg-config is supported here, we can do the intended split.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Gbp-Pq: Name build-Divide-mit-krb5-gssapi-link-flags-between-LDFLAGS-a.patch
Alessandro Ghedini [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Enable zsh completion generation
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2016-08-03
Gbp-Pq: Name 08_enable-zsh.patch
Alessandro Ghedini [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Work around libtool --as-needed reordering bug
Origin: vendor
Bug-Debian: http://bugs.debian.org/347650
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2016-08-03
Gbp-Pq: Name 04_workaround_as_needed_bug.patch
Guilherme Puida Moreira [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
curl (7.88.1-10+deb12u6) bookworm; urgency=medium
* Team upload.
[ Sergio Durigan Junior ]
* d/p/openldap-create-ldap-URLs-correctly-for-IPv6-addresses.patch:
(Closes: #
1053643)
[ Guilherme Puida Moreira ]
* Add patches to fix CVE-2024-2004 and CVE-2024-2398.
- CVE-2024-2004: When a protocol selection parameter disables all
protocols without adding any then the default set of protocols would
remain in the allowed set due to an error in the logic for removing
protocols.
- CVE-2024-2398: When an application tells libcurl it wants to allow
HTTP/2 server push and the amount of received headers for the push
surpasses the maximum allowed limit (1000), libcurl aborts the server
push and leaks the memory allocated for the previously allocated
headers.
* d/p/openldap-create-ldap-URLs-correctly-for-IPv6-addresses.patch:
Refresh patch.
[dgit import unpatched curl 7.88.1-10+deb12u6]
Guilherme Puida Moreira [Tue, 2 Apr 2024 23:02:10 +0000 (20:02 -0300)]
Import curl_7.88.1-10+deb12u6.debian.tar.xz
[dgit import tarball curl 7.88.1-10+deb12u6 curl_7.88.1-10+deb12u6.debian.tar.xz]
Raspbian automatic forward porter [Sun, 24 Dec 2023 08:58:13 +0000 (08:58 +0000)]
Merge version 7.88.1-10+rpi1+deb12u4 and 7.88.1-10+deb12u5 to produce 7.88.1-10+rpi1+deb12u5
Samuel Henrique [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
Merge curl (7.88.1-10+deb12u5) import into refs/heads/workingbranch
Ramakrishnan Muthukrishnan [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
Build with NSS.
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2015-08-12
Gbp-Pq: Name 99_nss.patch
Ramakrishnan Muthukrishnan [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
Build with GnuTLS.
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2018-05-23
Gbp-Pq: Name 90_gnutls.patch
Daniel Stenberg [Thu, 23 Nov 2023 07:23:17 +0000 (08:23 +0100)]
[PATCH] fopen: create short(er) temporary file name
Only using random letters in the name plus a ".tmp" extension. Not by
appending characters to the final file name.
Reported-by: Maksymilian Arciemowicz
Closes #12388
Backported by: Samuel Henrique <samueloph@debian.org>:
* The function Curl_rand_alnum was renamed to Curl_rand_hex
Gbp-Pq: Name CVE-2023-46219.patch
Daniel Stenberg [Thu, 23 Nov 2023 07:15:47 +0000 (08:15 +0100)]
[PATCH] cookie: lowercase the domain names before PSL checks
Reported-by: Harry Sintonen
Closes #12387
Backported by: Samuel Henrique <samueloph@debian.org>:
* Update signature of function "bad_domain"
Gbp-Pq: Name CVE-2023-46218.patch
Daniel Stenberg [Thu, 14 Sep 2023 21:28:32 +0000 (23:28 +0200)]
[PATCH] cookie: remove unnecessary struct fields
Plus: reduce the hash table size from 256 to 63. It seems unlikely to
make much of a speed difference for most use cases but saves 1.5KB of
data per instance.
Closes #11862
Backported by: Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-38546.patch
Jay Satiro [Sat, 30 Sep 2023 07:40:02 +0000 (03:40 -0400)]
[PATCH] socks: return error if hostname too long for remote resolve
Prior to this change the state machine attempted to change the remote
resolve to a local resolve if the hostname was longer than 255
characters. Unfortunately that did not work as intended and caused a
security issue.
Name resolvers cannot resolve hostnames longer than 255 characters.
Bug: https://curl.se/docs/CVE-2023-38545.html
Backported by: Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-38545.patch
Daniel Stenberg [Wed, 2 Aug 2023 21:34:48 +0000 (23:34 +0200)]
[PATCH] http: return error when receiving too large header set
To avoid abuse. The limit is set to 300 KB for the accumulated size of
all received HTTP headers for a single response. Incomplete research
suggests that Chrome uses a 256-300 KB limit, while Firefox allows up to
1MB.
Closes #11582
Backport to Debian by Carlos Henrique Lima Melara <charlesmelara@riseup.net>
Gbp-Pq: Name CVE-2023-38039.patch
Alessandro Ghedini [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
Fix Autotools not enabling OpenLDAP-specific functionality
Origin: upstream, https://github.com/curl/curl/commit/
0ac6108856b9d500bc376d1d7e0b648d15499837.patch
Bug: https://github.com/curl/curl/issues/11372
Applied-Upstream: 8.2.0, https://github.com/curl/curl/commit/
0ac6108856b9d500bc376d1d7e0b648d15499837
Reviewed-By: John Scott <jscott@posteo.net>
Last-Update: 2023-07-25
The non-OpenLDAP code paths are less tested, less featureful, less secure,
and omitted in the build system by accident. It has been discovered that this
also mitigates curl not being able to make LDIF output when attributes have
binary values.
Gbp-Pq: Name Use-OpenLDAP-specific-functionality.patch
SaltyMilk [Mon, 10 Jul 2023 19:43:28 +0000 (21:43 +0200)]
[PATCH] fopen: optimize
Closes #11419
Gbp-Pq: Name CVE-2023-32001.patch
Daniel Stenberg [Tue, 25 Apr 2023 06:28:01 +0000 (08:28 +0200)]
[PATCH] lib: unify the upload/method handling
By making sure we set state.upload based on the set.method value and not
independently as set.upload, we reduce confusion and mixup risks, both
internally and externally.
Closes #11017
Gbp-Pq: Name CVE-2023-28322.patch
Daniel Stenberg [Mon, 24 Apr 2023 19:07:02 +0000 (21:07 +0200)]
[PATCH] hostcheck: fix host name wildcard checking
The leftmost "label" of the host name can now only match against single
'*'. Like the browsers have worked for a long time.
- extended unit test 1397 for this
- move some SOURCE variables from unit/Makefile.am to unit/Makefile.inc
Reported-by: Hiroki Kurosawa
Closes #11018
Backported to Debian by Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-28321.patch
Daniel Stenberg [Tue, 16 May 2023 21:40:42 +0000 (23:40 +0200)]
[PATCH] hostip: include easy_lock.h before using GLOBAL_INIT_IS_THREADSAFE
Since that header file is the only place that define can be defined.
Reported-by: Marc Deslauriers
Follow-up to
13718030ad4b3209
Closes #11121
Gbp-Pq: Name CVE-2023-28320-1.patch
Harry Sintonen [Tue, 25 Apr 2023 07:22:26 +0000 (09:22 +0200)]
[PATCH] hostip: add locks around use of global buffer for alarm()
When building with the sync name resolver and timeout ability we now
require thread-safety to be present to enable it.
Closes #11030
Gbp-Pq: Name CVE-2023-28320.patch
Daniel Stenberg [Mon, 8 May 2023 12:33:54 +0000 (14:33 +0200)]
[PATCH] libssh2: free fingerprint better
Reported-by: Wei Chong Tan
Closes #11088
Gbp-Pq: Name CVE-2023-28319.patch
Daniel Stenberg [Thu, 9 Mar 2023 17:01:34 +0000 (18:01 +0100)]
[PATCH] CURLSHOPT_SHARE.3: HSTS sharing is not thread-safe
Reported-by: Hiroki Kurosawa
Closes #10732
Gbp-Pq: Name CVE-2023-27537.patch
Daniel Stenberg [Fri, 10 Mar 2023 08:22:43 +0000 (09:22 +0100)]
[PATCH] url: only reuse connections with same GSS delegation
Reported-by: Harry Sintonen
Closes #10731
Gbp-Pq: Name CVE-2023-27536.patch
Daniel Stenberg [Thu, 9 Mar 2023 16:47:06 +0000 (17:47 +0100)]
[PATCH] ftp: add more conditions for connection reuse
Reported-by: Harry Sintonen
Closes #10730
Gbp-Pq: Name CVE-2023-27535.patch
Daniel Stenberg [Fri, 10 Mar 2023 07:22:51 +0000 (08:22 +0100)]
[PATCH] url: fix the SSH connection reuse check
Reported-by: Harry Sintonen
Closes #10735
Gbp-Pq: Name CVE-2023-27538.patch
Daniel Stenberg [Thu, 9 Mar 2023 15:22:11 +0000 (16:22 +0100)]
[PATCH] curl_path: create the new path with dynbuf
Closes #10729
Gbp-Pq: Name CVE-2023-27534.patch
Daniel Stenberg [Mon, 6 Mar 2023 11:07:33 +0000 (12:07 +0100)]
[PATCH] telnet: only accept option arguments in ascii
To avoid embedded telnet negotiation commands etc.
Reported-by: Harry Sintonen
Closes #10728
Backported to Debian by Samuel Henrique <samueloph@debian.org>
Gbp-Pq: Name CVE-2023-27533.patch
Stefan Eissing [Tue, 28 Feb 2023 09:07:21 +0000 (10:07 +0100)]
[PATCH] Fixing unix domain socket use in https connects.
- refs #10633, when h2/h3 eyeballing was involved, unix domain socket
configurations were not honoured
- configuring --unix-socket will disable HTTP/3 as candidate for eyeballing
- combinatino of --unix-socket and --http3-only will fail during initialisation
- adding pytest test_11 to reproduce
Gbp-Pq: Name fix-unix-domain-socket.patch
Sergio Durigan Junior [Sun, 5 Mar 2023 17:00:03 +0000 (12:00 -0500)]
Use correct path when loading libnss{pem,ckbi}.so
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=726073
Gbp-Pq: Name Use-correct-path-when-loading-libnss-pem-ckbi-.so.patch
Simon McVittie [Tue, 22 Nov 2022 21:20:51 +0000 (21:20 +0000)]
Remove curl's LDFLAGS from curl-config --static-libs
On current Debian bookworm, the LDFLAGS consist of
-L/usr/lib/${triplet}/mit-krb5 originating from
`pkg-config --libs-only-L mit-krb5-gssapi` from krb5-multidev, plus
some linker options that are intended for curl itself rather than for
dependent packages. None of these are really desirable, and they create
divergence between architectures that would prevent libcurl-*-dev from
being Multi-Arch: same.
The -L flag is not really needed, for the same reason that -L@libdir@
isn't. curl Build-Depends on libkrb5-dev, which doesn't need a special
-L flag to find libgssapi_krb5, and the various libcurl-*-dev packages
have Suggests on libkrb5-dev rather than on krb5-multidev for static
linking.
The other options (currently `-Wl,-z-relro -Wl,-z,now`) are intended
for libcurl itself, and if dependent packages want those options then
they should set them from their own packaging.
Bug-Debian: https://bugs.debian.org/
1024668
Forwarded: not-needed
Signed-off-by: Simon McVittie <smcv@collabora.com>
Gbp-Pq: Name Remove-curl-s-LDFLAGS-from-curl-config-static-libs.patch
Benjamin Moody [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
In order to (partially) multi-arch-ify curl-config, remove all
Origin: vendor
Bug-Debian: http://bugs.debian.org/731998
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2017-01-10
mention of @includedir@ and @libdir@ from the script. On Debian, the actual
header and library directories are architecture-dependent, but will always be
in the C compiler's default search path, so -I and -L options are not
necessary (and may be harmful in multi-arch environments.)
Gbp-Pq: Name 11_omit-directories-from-config.patch
Simon McVittie [Tue, 22 Nov 2022 20:43:41 +0000 (20:43 +0000)]
build: Divide mit-krb5-gssapi link flags between LDFLAGS and LIBS
From the comments nearby about not having --libs-only-L, it looks as
though the intention was to apply a split like this to all dependency
libraries where possible, and the only reason it was not done for
Kerberos is that krb5-config doesn't have that feature and pkg-config
was originally not supported here. For example, zlib, libssh and librtmp
all have their flags from pkg-config split in this way.
Now that pkg-config is supported here, we can do the intended split.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Gbp-Pq: Name build-Divide-mit-krb5-gssapi-link-flags-between-LDFLAGS-a.patch
Alessandro Ghedini [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
Enable zsh completion generation
Origin: vendor
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2016-08-03
Gbp-Pq: Name 08_enable-zsh.patch
Alessandro Ghedini [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
Work around libtool --as-needed reordering bug
Origin: vendor
Bug-Debian: http://bugs.debian.org/347650
Forwarded: not-needed
Reviewed-by: Alessandro Ghedini <ghedo@debian.org>
Last-Update: 2016-08-03
Gbp-Pq: Name 04_workaround_as_needed_bug.patch
Samuel Henrique [Sun, 10 Dec 2023 06:07:30 +0000 (06:07 +0000)]
curl (7.88.1-10+deb12u5) bookworm-security; urgency=high
* Add patches to fix CVE-2023-46218 and CVE-2023-46219
* d/rules: set CURL_PATCHSTAMP to package's version, so it shows up in
"--version" output
[dgit import unpatched curl 7.88.1-10+deb12u5]