summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRobert Joslyn <robert.joslyn@redrectangle.org>2024-05-26 09:26:26 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-05-30 09:04:14 +0100
commit73d029e1d27b1b1ecd656a8a636555cbc6953ada (patch)
tree26d80c3a8ad13b7247961fb3913ce4b51f382d30 /meta
parentf12859b0e812ea7680298e992138fdf55bf31570 (diff)
downloadpoky-73d029e1d27b1b1ecd656a8a636555cbc6953ada.tar.gz
curl: Update to 8.8.0
Remove backported patch that is upsteam in this version. Disable test 1481 since it requires --libcurl option that is disabled by default. Remove --disable-ntlm-wb option since support for ntlm_wb was removed in this version (From OE-Core rev: f193e89cd957f0f0f7d8e9450b59061bf2e800c7) Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch64
-rw-r--r--meta/recipes-support/curl/curl/disable-tests1
-rw-r--r--meta/recipes-support/curl/curl_8.8.0.bb (renamed from meta/recipes-support/curl/curl_8.7.1.bb)4
3 files changed, 2 insertions, 67 deletions
diff --git a/meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch b/meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch
deleted file mode 100644
index 98f7db93e8..0000000000
--- a/meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch
+++ /dev/null
@@ -1,64 +0,0 @@
1From 721941aadf4adf4f6aeb3f4c0ab489bb89610c36 Mon Sep 17 00:00:00 2001
2From: Stefan Eissing <stefan@eissing.org>
3Date: Mon, 1 Apr 2024 15:41:18 +0200
4Subject: [PATCH] http: with chunked POST forced, disable length check on read
5 callback
6
7- when an application forces HTTP/1.1 chunked transfer encoding
8 by setting the corresponding header and instructs curl to use
9 the CURLOPT_READFUNCTION, disregard any POST length information.
10- this establishes backward compatibility with previous curl versions
11
12Applications are encouraged to not force "chunked", but rather
13set length information for a POST. By setting -1, curl will
14auto-select chunked on HTTP/1.1 and work properly on other HTTP
15versions.
16
17Reported-by: Jeff King
18Fixes #13229
19Closes #13257
20Upstream-Status: Backport
21---
22 lib/http.c | 22 ++++++++++++++++++++--
23 1 file changed, 20 insertions(+), 2 deletions(-)
24
25diff --git a/lib/http.c b/lib/http.c
26index 92c04e69cd8373..a764d3c4403c39 100644
27--- a/lib/http.c
28+++ b/lib/http.c
29@@ -2046,8 +2046,19 @@ static CURLcode set_reader(struct Curl_easy *data, Curl_HttpReq httpreq)
30 else
31 result = Curl_creader_set_null(data);
32 }
33- else { /* we read the bytes from the callback */
34- result = Curl_creader_set_fread(data, postsize);
35+ else {
36+ /* we read the bytes from the callback. In case "chunked" encoding
37+ * is forced by the application, we disregard `postsize`. This is
38+ * a backward compatibility decision to earlier versions where
39+ * chunking disregarded this. See issue #13229. */
40+ bool chunked = FALSE;
41+ char *ptr = Curl_checkheaders(data, STRCONST("Transfer-Encoding"));
42+ if(ptr) {
43+ /* Some kind of TE is requested, check if 'chunked' is chosen */
44+ chunked = Curl_compareheader(ptr, STRCONST("Transfer-Encoding:"),
45+ STRCONST("chunked"));
46+ }
47+ result = Curl_creader_set_fread(data, chunked? -1 : postsize);
48 }
49 return result;
50
51@@ -2115,6 +2126,13 @@ CURLcode Curl_http_req_set_reader(struct Curl_easy *data,
52 data->req.upload_chunky =
53 Curl_compareheader(ptr,
54 STRCONST("Transfer-Encoding:"), STRCONST("chunked"));
55+ if(data->req.upload_chunky &&
56+ Curl_use_http_1_1plus(data, data->conn) &&
57+ (data->conn->httpversion >= 20)) {
58+ infof(data, "suppressing chunked transfer encoding on connection "
59+ "using HTTP version 2 or higher");
60+ data->req.upload_chunky = FALSE;
61+ }
62 }
63 else {
64 curl_off_t req_clen = Curl_creader_total_length(data);
diff --git a/meta/recipes-support/curl/curl/disable-tests b/meta/recipes-support/curl/curl/disable-tests
index 259576fd01..c4aa7783a1 100644
--- a/meta/recipes-support/curl/curl/disable-tests
+++ b/meta/recipes-support/curl/curl/disable-tests
@@ -39,3 +39,4 @@
391404 391404
401405 401405
411465 411465
421481
diff --git a/meta/recipes-support/curl/curl_8.7.1.bb b/meta/recipes-support/curl/curl_8.8.0.bb
index 23b7c50a86..b932594159 100644
--- a/meta/recipes-support/curl/curl_8.7.1.bb
+++ b/meta/recipes-support/curl/curl_8.8.0.bb
@@ -11,12 +11,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=eed2e5088e1ac619c9a1c747da291d75"
11 11
12SRC_URI = " \ 12SRC_URI = " \
13 https://curl.se/download/${BP}.tar.xz \ 13 https://curl.se/download/${BP}.tar.xz \
14 file://721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch \
15 file://run-ptest \ 14 file://run-ptest \
16 file://disable-tests \ 15 file://disable-tests \
17 file://no-test-timeout.patch \ 16 file://no-test-timeout.patch \
18" 17"
19SRC_URI[sha256sum] = "6fea2aac6a4610fbd0400afb0bcddbe7258a64c63f1f68e5855ebc0c659710cd" 18SRC_URI[sha256sum] = "0f58bb95fc330c8a46eeb3df5701b0d90c9d9bfcc42bd1cd08791d12551d4400"
20 19
21# Curl has used many names over the years... 20# Curl has used many names over the years...
22CVE_PRODUCT = "haxx:curl haxx:libcurl curl:curl curl:libcurl libcurl:libcurl daniel_stenberg:curl" 21CVE_PRODUCT = "haxx:curl haxx:libcurl curl:curl curl:libcurl libcurl:libcurl daniel_stenberg:curl"
@@ -73,7 +72,6 @@ PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd"
73 72
74EXTRA_OECONF = " \ 73EXTRA_OECONF = " \
75 --disable-libcurl-option \ 74 --disable-libcurl-option \
76 --disable-ntlm-wb \
77 --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \ 75 --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \
78 --without-libpsl \ 76 --without-libpsl \
79 --enable-optimize \ 77 --enable-optimize \