Message ID | 20221227120002.12161-1-adolf.belka@ipfire.org |
---|---|
State | Accepted |
Commit | f5a57a8d6ab5162fb40edbecdf5bd0a3168a8d07 |
Headers |
Return-Path: <development-bounces@lists.ipfire.org> Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4NhCrr55CYz3wcv for <patchwork@web04.haj.ipfire.org>; Tue, 27 Dec 2022 12:00:12 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4NhCrp6xgdzyc; Tue, 27 Dec 2022 12:00:10 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4NhCrp5FsWz2xlX; Tue, 27 Dec 2022 12:00:10 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4NhCrp0qQpz2xGX for <development@lists.ipfire.org>; Tue, 27 Dec 2022 12:00:10 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4NhCrn4n0hzJQ; Tue, 27 Dec 2022 12:00:09 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1672142409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=r2b6v/839hkFYg5ErvN8QghMWzd0At3ry0yRcYlfE5E=; b=6dwRrpQY2vHKb8Wps1GCCKqaa6dxsyzUm3rxF/btCayKyYGBwdInAts+EIVHhlhgB0DoZn EFumCOccZlBfg+AQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1672142409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=r2b6v/839hkFYg5ErvN8QghMWzd0At3ry0yRcYlfE5E=; b=WeEFrkSSKRnt4Tox7mSoS/4JgFaK81xx6ydGmCShLqxvjZfCGVQbtzQzT2/EM+nn8WILad 9I8tbZ5C3qTiRFfnGVTuHjy8EHV6SKLuuoNyL9Tld0tIz47OCeKrr4dxwWxjMGsss5CmeN beMwlWdVgyhiAMCnxHeUCzd3NJ2S7MiGJY4xWTH99gcRR8W9laDL8SZHVgNWYnH+b/kFQ9 quh+4vrdCOGqtCKIqDGcFF9734NU9Qopa/DIIsJs5lRKTXhROxhkhc7+WDu2gHjJkO5gFd xtXFiivj8Prcm5oMQ0pT97ScCS+r/71U4YLIn9fwg2K2YnQxhwFBBYsnTi5Hmw== From: Adolf Belka <adolf.belka@ipfire.org> To: development@lists.ipfire.org Subject: [PATCH] curl: Update to version 7.87.0 Date: Tue, 27 Dec 2022 12:59:52 +0100 Message-Id: <20221227120002.12161-1-adolf.belka@ipfire.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk <development.lists.ipfire.org> List-Unsubscribe: <https://lists.ipfire.org/mailman/options/development>, <mailto:development-request@lists.ipfire.org?subject=unsubscribe> List-Archive: <http://lists.ipfire.org/pipermail/development/> List-Post: <mailto:development@lists.ipfire.org> List-Help: <mailto:development-request@lists.ipfire.org?subject=help> List-Subscribe: <https://lists.ipfire.org/mailman/listinfo/development>, <mailto:development-request@lists.ipfire.org?subject=subscribe> Errors-To: development-bounces@lists.ipfire.org Sender: "Development" <development-bounces@lists.ipfire.org> |
Series |
curl: Update to version 7.87.0
|
|
Commit Message
Adolf Belka
27 Dec 2022, 11:59 a.m. UTC
- Update from version 7.86.0 to 7.87.0
- Update of rootfile
- version 7.87.0 changed hoiw it deals with deprecated typecheck expressions. This caused
zabbix_agentd build to fail. Curl developers created a commit to fix this in next
version release. Added as patch here. Should be able to be removed with next curl
update.
- Changelog
curl and libcurl 7.87.0
This release includes the following changes:
o curl: add --url-query [52]
o CURLOPT_QUICK_EXIT: don't wait for DNS thread on exit [75]
o lib: add CURL_WRITEFUNC_ERROR to signal write callback error [47]
o openssl: reduce CA certificate bundle reparsing by caching [11]
o version: add a feature names array to curl_version_info_data [67]
This release includes the following bugfixes:
o altsvc: fix rejection of negative port numbers [144]
o aws_sigv4: consult x-%s-content-sha256 for payload hash [102]
o aws_sigv4: fix typos in aws_sigv4.c [101]
o base64: better alloc size [124]
o base64: encode without using snprintf [123]
o base64: faster base64 decoding [120]
o build: assume assert.h is always available [111]
o build: assume errno.h is always available [110]
o c-hyper: CONNECT respones are not server responses [137]
o c-hyper: fix multi-request mechanism [115]
o CI: Change FreeBSD image from 12.3 to 12.4 [108]
o CI: LGTM.com will be shut down in December 2022 [112]
o ci: Remove zuul fuzzing job as it's superseded by CIFuzz
o cmake: check for cross-compile, not for toolchain [54]
o CMake: fix build with `CURL_USE_GSSAPI` [78]
o cmake: really enable warnings with clang [25]
o cmake: set the soname on the shared library [140]
o cmdline-opts/gen.pl: fix the linkifier [64]
o cmdline-opts/page-footer: remove long option nroff formatting
o config-mac: define HAVE_SYS_IOCTL_H [107]
o config-mac: fix typo: size_T -> size_t [125]
o config-mac: remove HAVE_SYS_SELECT_H [116]
o config-win32: fix SIZEOF_OFF_T for MSVC and old MinGW [41]
o configure: require fork for NTLM-WB [36]
o contributors.sh: actually use $CURLWWW instead of just setting it [129]
o cookie: compare cookie prefixes case insensitively [14]
o cookie: expire cookies at once when max-age is negative [45]
o cookie: open cookie jar as a binary file [89]
o curl-openssl.m4: do not add $prefix/include/openssl to CPPFLAGS [90]
o curl-rustls.m4: on macOS, rustls also needs the Security framework [44]
o curl.h: include <sys/select.h> on SerenityOS [104]
o curl.h: name all public function parameters [118]
o curl.h: reword comment to not use deprecated option [132]
o curl: override the numeric locale and set "C" by force [60]
o curl: timeout in the read callback [15]
o curl_endian: remove Curl_write64_le from header [81]
o curl_get_line: allow last line without newline char [88]
o curl_path: do not add '/' if homedir ends with one [4]
o curl_url_get.3: remove spurious backtick [127]
o curl_url_set.3: document CURLU_DISALLOW_USER [139]
o curl_url_set.3: fix typo [148]
o CURLMOPT_SOCKETFUNCTION.3: clarify CURL_POLL_REMOVE [1]
o CURLOPT_COOKIEFILE.3: advice => advise [131]
o CURLOPT_DEBUGFUNCTION.3: do not assume nul-termination in example [31]
o CURLOPT_DEBUGFUNCTION.3: emphasize that incoming data is "raw" [130]
o CURLOPT_POST.3: Explain setting to 0 changes request type [61]
o docs/curl_ws_send: Fixed typo in websocket docs [114]
o docs/EARLY-RELEASE.md: how to determine an early release [37]
o docs/examples: spell correction ('Retrieve') [119]
o docs/INSTALL.md: expand on static builds [62]
o docs/WEBSOCKET.md: explain the URL use [71]
o docs: add missing parameters for --retry flag [2]
o docs: add more "SEE ALSO" links to CA related pages [82]
o docs: explain the noproxy CIDR notation support [17]
o docs: extend the dump-header documentation [150]
o docs: remove performance note in CURLOPT_SSL_VERIFYPEER [13]
o examples/10-at-a-time: fix possible skipped final transfers [85]
o examples: update descriptions [83]
o ftp: support growing files with CURLOPT_IGNORE_CONTENT_LENGTH [96]
o gen.pl: do not generate CURLHELP bitmask lines > 79 characters [10]
o GHA: clarify workflows permissions, set least possible privilege [79]
o GHA: NSS use clang instead of clang-9 [103]
o gnutls: use common gnutls init and verify code for ngtcp2 [98]
o headers: add endif comments [51]
o HTTP-COOKIES.md: mention that http://localhost is a secure context [76]
o HTTP-COOKIES.md: update the 6265bis link to draft-11 [70]
o http: do not send PROXY more than once [46]
o http: fix the ::1 comparison for IPv6 localhost for cookies [155]
o http: set 'this_is_a_follow' in the Location: logic [40]
o http: use the IDN decoded name in HSTS checks [154]
o hyper: classify headers as CONNECT and 1XX [56]
o hyper: fix handling of hyper_task's when reusing the same address [33]
o idn: remove Curl_win32_ascii_to_idn [153]
o INSTALL: update operating systems and CPU archs [91]
o KNOWN_BUGS: remove eight entries [50]
o lib1560: add some basic IDN host name tests [151]
o lib: connection filters (cfilter) addition to curl: [43]
o lib: feature deprecation warnings in gcc >= 4.3 [58]
o lib: fix some type mismatches and remove unneeded typecasts [12]
o lib: parse numbers with fixed known base 10 [77]
o lib: remove bad set.opt_no_body assignments [42]
o lib: rewind BEFORE request instead of AFTER previous [65]
o lib: sync guard for Curl_getaddrinfo_ex() definition and use [6]
o lib: use size_t or int etc instead of longs [145]
o libcurl-errors.3: remove duplicate word [3]
o libssh2: return error when ssh_hostkeyfunc returns error [121]
o limit-rate.d: see also --rate
o log2changes.pl: wrap long lines at 80 columns [59]
o Makefile.mk: address minor issues [87]
o Makefile.mk: improve a GNU Make hack [122]
o Makefile.mk: portable Makefile.m32 [86]
o maketgz: set the right version in lib/libcurl.plist [53]
o mime: relax easy/mime structures binding [94]
o misc: Fix incorrect spelling [113]
o misc: remove duplicated include files [28]
o misc: typo and grammar fixes [23]
o negtelnetserver.py: have it call its close() method [68]
o netrc.d: provide mutext info [63]
o netware: remove leftover traces [80]
o noproxy: also match with adjacent comma [19]
o noproxy: guard against empty hostnames in noproxy check [136]
o noproxy: tailmatch like in 7.85.0 and earlier [35]
o nroff-scan.pl: detect double highlights
o ntlm: improve comment for encrypt_des [55]
o ntlm: silence ubsan warning about copying from null target_info pointer [69]
o openssl/mbedtls: use %d for outputing port with failf (int) [72]
o openssl: prefix errors with '[lib]/[version]: ' [105]
o os400: use platform socklen_t in Curl_getnameinfo_a [18]
o page-header: grammar improvement (display transfer rate) [126]
o proxy: refactor haproxy protocol handling as connection filter [57]
o README.md: remove badges and xmas-tree garnish [9]
o rtsp: fix RTSP auth [49]
o runtests: --no-debuginfod now disables DEBUGINFOD_URLS [100]
o runtests: do CRLF replacements per section only [97]
o scripts/checksrc.pl: detect duplicated include files [29]
o sendf: change Curl_read_plain to wrap Curl_recv_plain [48]
o sendf: remove unnecessary if condition [26]
o setup: do not require __MRC__ defined for Mac OS 9 builds [117]
o smb/telnet: do not free the protocol struct in *_done() [152]
o socks: fix username max size is 255 (0xFF) [146]
o spellcheck.words: remove 'github' as an accepted word [22]
o ssl-reqd.d: clarify that this is for upgrading connections only [138]
o strcase: use curl_str(n)equal for case insensitive matches [8]
o styled-output.d: this option does not work on Windows [93]
o system.h: fix socklen_t, curl_off_t, long long for Classic Mac OS [133]
o system.h: support 64-bit curl_off_t for NonStop 32-bit [21]
o test1421: fix typo [109]
o test3026: reduce runtime in legacy mingw builds [73]
o tests/sshserver.pl: re-enable ssh-rsa while using openssh 8.8+
o tests: add authorityInfoAccess to generated certs [99]
o tests: add HTTP/3 test case, custom location for proper nghttpx [106]
o tls: backends use connection filters for IO, enabling HTTPS-proxy [92]
o tool: determine the correct fopen option for -D [95]
o tool_cfgable: free the ssl_ec_curves on exit [142]
o tool_cfgable: make socks5_gssapi_nec a boolean [128]
o tool_formparse: avoid clobbering on function params [135]
o tool_getparam: make --no-get work as the opposite of --get [39]
o tool_operate: provide better errmsg for -G with bad URL [16]
o tool_operate: when aborting, make sure there is a non-NULL error buffer [20]
o tool_paramhlp: free the proto strings on exit [141]
o url: move back the IDN conversion of proxy names [74]
o urlapi: reject more bad letters from the host name: &+() [143]
o urldata: change port num storage to int and unsigned short [66]
o vms: remove SIZEOF_SHORT [134]
o vtls: fix build without proxy support [38]
o vtls: localization of state data in filters [84]
o WEBSOCKET.md: fix broken link [30]
o Websocket: fixes for partial frames and buffer updates [7]
o websockets: fix handling of partial frames [32]
o windows: fail early with a missing windres in autotools [5]
o windows: fix linking .rc to shared curl with autotools [24]
o winidn: drop WANT_IDN_PROTOTYPES [27]
o ws: if no connection is around, return error [149]
o ws: return CURLE_NOT_BUILT_IN when websockets not built in [34]
o x509asn1: avoid freeing unallocated pointers [147]
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
config/rootfiles/common/curl | 1 +
lfs/curl | 6 ++-
...pressions_for_option_info_parameters.patch | 42 +++++++++++++++++++
3 files changed, 47 insertions(+), 2 deletions(-)
create mode 100644 src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch
Comments
Reviewed-by: Peter Müller <peter.mueller@ipfire.org> > - Update from version 7.86.0 to 7.87.0 > - Update of rootfile > - version 7.87.0 changed hoiw it deals with deprecated typecheck expressions. This caused > zabbix_agentd build to fail. Curl developers created a commit to fix this in next > version release. Added as patch here. Should be able to be removed with next curl > update. > - Changelog > curl and libcurl 7.87.0 > This release includes the following changes: > o curl: add --url-query [52] > o CURLOPT_QUICK_EXIT: don't wait for DNS thread on exit [75] > o lib: add CURL_WRITEFUNC_ERROR to signal write callback error [47] > o openssl: reduce CA certificate bundle reparsing by caching [11] > o version: add a feature names array to curl_version_info_data [67] > This release includes the following bugfixes: > o altsvc: fix rejection of negative port numbers [144] > o aws_sigv4: consult x-%s-content-sha256 for payload hash [102] > o aws_sigv4: fix typos in aws_sigv4.c [101] > o base64: better alloc size [124] > o base64: encode without using snprintf [123] > o base64: faster base64 decoding [120] > o build: assume assert.h is always available [111] > o build: assume errno.h is always available [110] > o c-hyper: CONNECT respones are not server responses [137] > o c-hyper: fix multi-request mechanism [115] > o CI: Change FreeBSD image from 12.3 to 12.4 [108] > o CI: LGTM.com will be shut down in December 2022 [112] > o ci: Remove zuul fuzzing job as it's superseded by CIFuzz > o cmake: check for cross-compile, not for toolchain [54] > o CMake: fix build with `CURL_USE_GSSAPI` [78] > o cmake: really enable warnings with clang [25] > o cmake: set the soname on the shared library [140] > o cmdline-opts/gen.pl: fix the linkifier [64] > o cmdline-opts/page-footer: remove long option nroff formatting > o config-mac: define HAVE_SYS_IOCTL_H [107] > o config-mac: fix typo: size_T -> size_t [125] > o config-mac: remove HAVE_SYS_SELECT_H [116] > o config-win32: fix SIZEOF_OFF_T for MSVC and old MinGW [41] > o configure: require fork for NTLM-WB [36] > o contributors.sh: actually use $CURLWWW instead of just setting it [129] > o cookie: compare cookie prefixes case insensitively [14] > o cookie: expire cookies at once when max-age is negative [45] > o cookie: open cookie jar as a binary file [89] > o curl-openssl.m4: do not add $prefix/include/openssl to CPPFLAGS [90] > o curl-rustls.m4: on macOS, rustls also needs the Security framework [44] > o curl.h: include <sys/select.h> on SerenityOS [104] > o curl.h: name all public function parameters [118] > o curl.h: reword comment to not use deprecated option [132] > o curl: override the numeric locale and set "C" by force [60] > o curl: timeout in the read callback [15] > o curl_endian: remove Curl_write64_le from header [81] > o curl_get_line: allow last line without newline char [88] > o curl_path: do not add '/' if homedir ends with one [4] > o curl_url_get.3: remove spurious backtick [127] > o curl_url_set.3: document CURLU_DISALLOW_USER [139] > o curl_url_set.3: fix typo [148] > o CURLMOPT_SOCKETFUNCTION.3: clarify CURL_POLL_REMOVE [1] > o CURLOPT_COOKIEFILE.3: advice => advise [131] > o CURLOPT_DEBUGFUNCTION.3: do not assume nul-termination in example [31] > o CURLOPT_DEBUGFUNCTION.3: emphasize that incoming data is "raw" [130] > o CURLOPT_POST.3: Explain setting to 0 changes request type [61] > o docs/curl_ws_send: Fixed typo in websocket docs [114] > o docs/EARLY-RELEASE.md: how to determine an early release [37] > o docs/examples: spell correction ('Retrieve') [119] > o docs/INSTALL.md: expand on static builds [62] > o docs/WEBSOCKET.md: explain the URL use [71] > o docs: add missing parameters for --retry flag [2] > o docs: add more "SEE ALSO" links to CA related pages [82] > o docs: explain the noproxy CIDR notation support [17] > o docs: extend the dump-header documentation [150] > o docs: remove performance note in CURLOPT_SSL_VERIFYPEER [13] > o examples/10-at-a-time: fix possible skipped final transfers [85] > o examples: update descriptions [83] > o ftp: support growing files with CURLOPT_IGNORE_CONTENT_LENGTH [96] > o gen.pl: do not generate CURLHELP bitmask lines > 79 characters [10] > o GHA: clarify workflows permissions, set least possible privilege [79] > o GHA: NSS use clang instead of clang-9 [103] > o gnutls: use common gnutls init and verify code for ngtcp2 [98] > o headers: add endif comments [51] > o HTTP-COOKIES.md: mention that http://localhost is a secure context [76] > o HTTP-COOKIES.md: update the 6265bis link to draft-11 [70] > o http: do not send PROXY more than once [46] > o http: fix the ::1 comparison for IPv6 localhost for cookies [155] > o http: set 'this_is_a_follow' in the Location: logic [40] > o http: use the IDN decoded name in HSTS checks [154] > o hyper: classify headers as CONNECT and 1XX [56] > o hyper: fix handling of hyper_task's when reusing the same address [33] > o idn: remove Curl_win32_ascii_to_idn [153] > o INSTALL: update operating systems and CPU archs [91] > o KNOWN_BUGS: remove eight entries [50] > o lib1560: add some basic IDN host name tests [151] > o lib: connection filters (cfilter) addition to curl: [43] > o lib: feature deprecation warnings in gcc >= 4.3 [58] > o lib: fix some type mismatches and remove unneeded typecasts [12] > o lib: parse numbers with fixed known base 10 [77] > o lib: remove bad set.opt_no_body assignments [42] > o lib: rewind BEFORE request instead of AFTER previous [65] > o lib: sync guard for Curl_getaddrinfo_ex() definition and use [6] > o lib: use size_t or int etc instead of longs [145] > o libcurl-errors.3: remove duplicate word [3] > o libssh2: return error when ssh_hostkeyfunc returns error [121] > o limit-rate.d: see also --rate > o log2changes.pl: wrap long lines at 80 columns [59] > o Makefile.mk: address minor issues [87] > o Makefile.mk: improve a GNU Make hack [122] > o Makefile.mk: portable Makefile.m32 [86] > o maketgz: set the right version in lib/libcurl.plist [53] > o mime: relax easy/mime structures binding [94] > o misc: Fix incorrect spelling [113] > o misc: remove duplicated include files [28] > o misc: typo and grammar fixes [23] > o negtelnetserver.py: have it call its close() method [68] > o netrc.d: provide mutext info [63] > o netware: remove leftover traces [80] > o noproxy: also match with adjacent comma [19] > o noproxy: guard against empty hostnames in noproxy check [136] > o noproxy: tailmatch like in 7.85.0 and earlier [35] > o nroff-scan.pl: detect double highlights > o ntlm: improve comment for encrypt_des [55] > o ntlm: silence ubsan warning about copying from null target_info pointer [69] > o openssl/mbedtls: use %d for outputing port with failf (int) [72] > o openssl: prefix errors with '[lib]/[version]: ' [105] > o os400: use platform socklen_t in Curl_getnameinfo_a [18] > o page-header: grammar improvement (display transfer rate) [126] > o proxy: refactor haproxy protocol handling as connection filter [57] > o README.md: remove badges and xmas-tree garnish [9] > o rtsp: fix RTSP auth [49] > o runtests: --no-debuginfod now disables DEBUGINFOD_URLS [100] > o runtests: do CRLF replacements per section only [97] > o scripts/checksrc.pl: detect duplicated include files [29] > o sendf: change Curl_read_plain to wrap Curl_recv_plain [48] > o sendf: remove unnecessary if condition [26] > o setup: do not require __MRC__ defined for Mac OS 9 builds [117] > o smb/telnet: do not free the protocol struct in *_done() [152] > o socks: fix username max size is 255 (0xFF) [146] > o spellcheck.words: remove 'github' as an accepted word [22] > o ssl-reqd.d: clarify that this is for upgrading connections only [138] > o strcase: use curl_str(n)equal for case insensitive matches [8] > o styled-output.d: this option does not work on Windows [93] > o system.h: fix socklen_t, curl_off_t, long long for Classic Mac OS [133] > o system.h: support 64-bit curl_off_t for NonStop 32-bit [21] > o test1421: fix typo [109] > o test3026: reduce runtime in legacy mingw builds [73] > o tests/sshserver.pl: re-enable ssh-rsa while using openssh 8.8+ > o tests: add authorityInfoAccess to generated certs [99] > o tests: add HTTP/3 test case, custom location for proper nghttpx [106] > o tls: backends use connection filters for IO, enabling HTTPS-proxy [92] > o tool: determine the correct fopen option for -D [95] > o tool_cfgable: free the ssl_ec_curves on exit [142] > o tool_cfgable: make socks5_gssapi_nec a boolean [128] > o tool_formparse: avoid clobbering on function params [135] > o tool_getparam: make --no-get work as the opposite of --get [39] > o tool_operate: provide better errmsg for -G with bad URL [16] > o tool_operate: when aborting, make sure there is a non-NULL error buffer [20] > o tool_paramhlp: free the proto strings on exit [141] > o url: move back the IDN conversion of proxy names [74] > o urlapi: reject more bad letters from the host name: &+() [143] > o urldata: change port num storage to int and unsigned short [66] > o vms: remove SIZEOF_SHORT [134] > o vtls: fix build without proxy support [38] > o vtls: localization of state data in filters [84] > o WEBSOCKET.md: fix broken link [30] > o Websocket: fixes for partial frames and buffer updates [7] > o websockets: fix handling of partial frames [32] > o windows: fail early with a missing windres in autotools [5] > o windows: fix linking .rc to shared curl with autotools [24] > o winidn: drop WANT_IDN_PROTOTYPES [27] > o ws: if no connection is around, return error [149] > o ws: return CURLE_NOT_BUILT_IN when websockets not built in [34] > o x509asn1: avoid freeing unallocated pointers [147] > > Signed-off-by: Adolf Belka <adolf.belka@ipfire.org> > --- > config/rootfiles/common/curl | 1 + > lfs/curl | 6 ++- > ...pressions_for_option_info_parameters.patch | 42 +++++++++++++++++++ > 3 files changed, 47 insertions(+), 2 deletions(-) > create mode 100644 src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch > > diff --git a/config/rootfiles/common/curl b/config/rootfiles/common/curl > index 01a5fd792..82e3988d6 100644 > --- a/config/rootfiles/common/curl > +++ b/config/rootfiles/common/curl > @@ -119,6 +119,7 @@ usr/lib/libcurl.so.4.8.0 > #usr/share/man/man3/CURLOPT_CAINFO.3 > #usr/share/man/man3/CURLOPT_CAINFO_BLOB.3 > #usr/share/man/man3/CURLOPT_CAPATH.3 > +#usr/share/man/man3/CURLOPT_CA_CACHE_TIMEOUT.3 > #usr/share/man/man3/CURLOPT_CERTINFO.3 > #usr/share/man/man3/CURLOPT_CHUNK_BGN_FUNCTION.3 > #usr/share/man/man3/CURLOPT_CHUNK_DATA.3 > diff --git a/lfs/curl b/lfs/curl > index 33678f795..b76c33410 100644 > --- a/lfs/curl > +++ b/lfs/curl > @@ -24,7 +24,7 @@ > > include Config > > -VER = 7.86.0 > +VER = 7.87.0 > > THISAPP = curl-$(VER) > DL_FILE = $(THISAPP).tar.xz > @@ -40,7 +40,7 @@ objects = $(DL_FILE) > > $(DL_FILE) = $(DL_FROM)/$(DL_FILE) > > -$(DL_FILE)_BLAKE2 = a1de7feb229de42bf1deeb5017f97df3b1c10c75fac99bcd0cd21a5dc69b6d8b62520744106d6a113c7a86bd6731dba536a263aabfa22be50d520c43e894acce > +$(DL_FILE)_BLAKE2 = b272ec928c5ef1728434630d8910f58834327a30570913df9d47921a2810d002bd88b81371005197db857d3a53386420c1e28b1e463e6241d46c1e50fbce0c13 > > install : $(TARGET) > > @@ -70,6 +70,8 @@ $(subst %,%_BLAKE2,$(objects)) : > $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) > @$(PREBUILD) > @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xf $(DIR_DL)/$(DL_FILE) > + # Add upstream patche. > + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch > cd $(DIR_APP) && ./configure \ > --prefix=/usr \ > --disable-ipv6 \ > diff --git a/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch b/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch > new file mode 100644 > index 000000000..63b23e309 > --- /dev/null > +++ b/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch > @@ -0,0 +1,42 @@ > +From curl commit e2aed00 > + > +As expressions can have side effects, evaluate only once. > + > +To enable deprecation reporting only once, get rid of the __typeof__ > +use to define the local temporary variable and use the target type > +(CURLoption/CURLINFO). This also avoids multiple reports on type > +conflicts (if some) by the curlcheck_* macros. > + > +Note that CURLOPT_* and CURLINFO_* symbols may be deprecated, but not > +their values: a curl_easy_setopt call with an integer constant as option > +will never report a deprecation. > + > +Reported-by: Thomas Klausner > +Fixes #10148 > +Closes #10149 > + > + > +--- curl-7.87.0/include/curl/typecheck-gcc.h.orig 2022-12-19 08:48:23.000000000 +0100 > ++++ curl-7.87.0/include/curl/typecheck-gcc.h 2022-12-26 20:39:29.243819395 +0100 > +@@ -42,9 +42,8 @@ > + */ > + #define curl_easy_setopt(handle, option, value) \ > + __extension__({ \ > +- CURL_IGNORE_DEPRECATION(__typeof__(option) _curl_opt = option;) \ > ++ CURLoption _curl_opt = (option); \ > + if(__builtin_constant_p(_curl_opt)) { \ > +- (void) option; \ > + CURL_IGNORE_DEPRECATION( \ > + if(curlcheck_long_option(_curl_opt)) \ > + if(!curlcheck_long(value)) \ > +@@ -120,9 +119,8 @@ > + /* wraps curl_easy_getinfo() with typechecking */ > + #define curl_easy_getinfo(handle, info, arg) \ > + __extension__({ \ > +- CURL_IGNORE_DEPRECATION(__typeof__(info) _curl_info = info;) \ > ++ CURLINFO _curl_info = (info); \ > + if(__builtin_constant_p(_curl_info)) { \ > +- (void) info; \ > + CURL_IGNORE_DEPRECATION( \ > + if(curlcheck_string_info(_curl_info)) \ > + if(!curlcheck_arr((arg), char *)) \
diff --git a/config/rootfiles/common/curl b/config/rootfiles/common/curl index 01a5fd792..82e3988d6 100644 --- a/config/rootfiles/common/curl +++ b/config/rootfiles/common/curl @@ -119,6 +119,7 @@ usr/lib/libcurl.so.4.8.0 #usr/share/man/man3/CURLOPT_CAINFO.3 #usr/share/man/man3/CURLOPT_CAINFO_BLOB.3 #usr/share/man/man3/CURLOPT_CAPATH.3 +#usr/share/man/man3/CURLOPT_CA_CACHE_TIMEOUT.3 #usr/share/man/man3/CURLOPT_CERTINFO.3 #usr/share/man/man3/CURLOPT_CHUNK_BGN_FUNCTION.3 #usr/share/man/man3/CURLOPT_CHUNK_DATA.3 diff --git a/lfs/curl b/lfs/curl index 33678f795..b76c33410 100644 --- a/lfs/curl +++ b/lfs/curl @@ -24,7 +24,7 @@ include Config -VER = 7.86.0 +VER = 7.87.0 THISAPP = curl-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = a1de7feb229de42bf1deeb5017f97df3b1c10c75fac99bcd0cd21a5dc69b6d8b62520744106d6a113c7a86bd6731dba536a263aabfa22be50d520c43e894acce +$(DL_FILE)_BLAKE2 = b272ec928c5ef1728434630d8910f58834327a30570913df9d47921a2810d002bd88b81371005197db857d3a53386420c1e28b1e463e6241d46c1e50fbce0c13 install : $(TARGET) @@ -70,6 +70,8 @@ $(subst %,%_BLAKE2,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar xf $(DIR_DL)/$(DL_FILE) + # Add upstream patche. + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch cd $(DIR_APP) && ./configure \ --prefix=/usr \ --disable-ipv6 \ diff --git a/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch b/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch new file mode 100644 index 000000000..63b23e309 --- /dev/null +++ b/src/patches/curl-7.87.0_typecheck_accept_expressions_for_option_info_parameters.patch @@ -0,0 +1,42 @@ +From curl commit e2aed00 + +As expressions can have side effects, evaluate only once. + +To enable deprecation reporting only once, get rid of the __typeof__ +use to define the local temporary variable and use the target type +(CURLoption/CURLINFO). This also avoids multiple reports on type +conflicts (if some) by the curlcheck_* macros. + +Note that CURLOPT_* and CURLINFO_* symbols may be deprecated, but not +their values: a curl_easy_setopt call with an integer constant as option +will never report a deprecation. + +Reported-by: Thomas Klausner +Fixes #10148 +Closes #10149 + + +--- curl-7.87.0/include/curl/typecheck-gcc.h.orig 2022-12-19 08:48:23.000000000 +0100 ++++ curl-7.87.0/include/curl/typecheck-gcc.h 2022-12-26 20:39:29.243819395 +0100 +@@ -42,9 +42,8 @@ + */ + #define curl_easy_setopt(handle, option, value) \ + __extension__({ \ +- CURL_IGNORE_DEPRECATION(__typeof__(option) _curl_opt = option;) \ ++ CURLoption _curl_opt = (option); \ + if(__builtin_constant_p(_curl_opt)) { \ +- (void) option; \ + CURL_IGNORE_DEPRECATION( \ + if(curlcheck_long_option(_curl_opt)) \ + if(!curlcheck_long(value)) \ +@@ -120,9 +119,8 @@ + /* wraps curl_easy_getinfo() with typechecking */ + #define curl_easy_getinfo(handle, info, arg) \ + __extension__({ \ +- CURL_IGNORE_DEPRECATION(__typeof__(info) _curl_info = info;) \ ++ CURLINFO _curl_info = (info); \ + if(__builtin_constant_p(_curl_info)) { \ +- (void) info; \ + CURL_IGNORE_DEPRECATION( \ + if(curlcheck_string_info(_curl_info)) \ + if(!curlcheck_arr((arg), char *)) \