Skip to content

Commit a59a10d

Browse files
Update curl from 7.75.0 to 7.76.1 (#2182)
* Update curl from 7.75.0 to 7.76.0 * Fix linux config * Update curl from 7.76.0 to 7.76.1
1 parent 586d6d6 commit a59a10d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

104 files changed

+7949
-6983
lines changed

vendor/curl/CHANGES

Lines changed: 5249 additions & 5018 deletions
Large diffs are not rendered by default.

vendor/curl/RELEASE-NOTES

Lines changed: 55 additions & 243 deletions
Original file line numberDiff line numberDiff line change
@@ -1,135 +1,38 @@
1-
curl and libcurl 7.75.0
1+
curl and libcurl 7.76.1
22

3-
Public curl releases: 197
4-
Command line options: 237
5-
curl_easy_setopt() options: 285
3+
Public curl releases: 199
4+
Command line options: 240
5+
curl_easy_setopt() options: 288
66
Public functions in libcurl: 85
7-
Contributors: 2322
7+
Contributors: 2366
88

99
This release includes the following changes:
1010

11-
o curl: add --create-file-mode [mode] [28]
12-
o curl: add new variables to --write-out [25]
13-
o dns: extend CURLOPT_RESOLVE syntax for adding non-permanent entries [53]
14-
o gopher: implement secure gopher protocol [2]
15-
o http: add Hyper as new optional HTTP backend [24]
16-
o http: introduce AWS HTTP v4 Signature support [26]
11+
o
1712

1813
This release includes the following bugfixes:
1914

20-
o badsymbols.pl: add verbose mode -v [31]
21-
o badsymbols.pl: ignore stand-alone single hash lines [40]
22-
o BUG-BOUNTY: minor language updates [5]
23-
o build: fix djgpp builds [84]
24-
o cleanup: fix empty expression statement has no effect
25-
o cmake: Add an option to disable libidn2 [48]
26-
o cmake: enable gophers correctly in curl-config [10]
27-
o cmake: expose CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG [32]
28-
o cmdline-opts/gen.pl: return hard on errors [11]
29-
o cmdline-opts/retry.d: mention response code 429 as well [47]
30-
o configure: set -Wextra-semi-stmt for clang with --enable-debug [52]
31-
o connect: defer port selection until connect() time [22]
32-
o connect: mark intentional ignores of setsockopt return values [75]
33-
o connect: on linux, enable reporting of all ICMP errors on UDP sockets [27]
34-
o connect: zero variable on stack to silence valgrind complaint [23]
35-
o cookie: avoid the C1001 internal compiler error with MSVC 14 [36]
36-
o curl.1: fix typo microsft -> microsoft [56]
37-
o curl: fix handling of -q option [39]
38-
o curl: include the file name in --xattr/--remote-time error msgs
39-
o curl: move fprintf outputs to warnf [105]
40-
o Curl_chunker: shrink the struct [104]
41-
o curl_easy_pause.3: add multiplexed pause effects [41]
42-
o CURLINFO_PRETRANSFER_TIME.3: clarify [61]
43-
o CURLOPT_URL.3: remove scheme specific details [12]
44-
o digest_sspi: Show InitializeSecurityContext errors in verbose mode [8]
45-
o docs/examples: adjust prototypes for CURLOPT_READFUNCTION [51]
46-
o docs/URL-SYNTAX: the URL syntax curl accepts and works with [15]
47-
o docs: enable syntax highlighting in several docs files [16]
48-
o docs: fix line length bug in gen.pl [70]
49-
o docs: fix typos in NEW-PROTOCOL.md [102]
50-
o docs: fix wrong documentation in help.d [71]
51-
o docs: remove redundant "better" in --fail help [55]
52-
o doh: allocate state struct on demand [85]
53-
o examples/libtest: add .checksrc to dist [14]
54-
o examples: remove superfluous asterisk uses
55-
o failf: remove newline from formatting strings [35]
56-
o file: don't provide content-length for directories [49]
57-
o getinfo: build with disabled HTTP support
58-
o gitattributes: Set batch files to CRLF line endings on checkout [65]
59-
o h2: do not wait for RECV on paused transfers [43]
60-
o HISTORY: added dates to early history
61-
o http: empty reply connection are not left intact [80]
62-
o http: get CURLOPT_REQUEST_TARGET working with a HTTP proxy [83]
63-
o http: have CURLOPT_FAILONERROR fail after all headers [54]
64-
o http: make providing Proxy-Connection header not cause duplicated headers [92]
65-
o http: show the request as headers even when split-sending [7]
66-
o http_chunks: correct and clarify a comment on hexnumber length [88]
67-
o http_proxy: Fix CONNECT chunked encoding race condition [76]
68-
o httpauth: make multi-request auth work with custom port [45]
69-
o INSTALL: now at 85 operating systems
70-
o INSTALL: update the list known OSes and CPU archs curl has run on [38]
71-
o lib/unit tests: add missing curl_global_cleanup() calls
72-
o lib1564/5: verify that curl_multi_wakeup returns OK
73-
o lib: pass in 'struct Curl_easy *' to most functions [101]
74-
o lib: remove Curl_ prefix from many static functions [66]
75-
o lib: save a bit of space with some structure packing [82]
76-
o libssh2: fix "Value stored to 'readdir_len' is never read"
77-
o libssh2: move data from connection object to transfer object [114]
78-
o libssh: avoid plain free() of libssh-memory [99]
79-
o mime: make sure setting MIMEPOST to NULL resets properly [58]
80-
o misc: assorted typo fixes [57]
81-
o misc: fix "warning: empty expression statement has no effect" [30]
82-
o misc: fix typos [73]
83-
o mk-ca-bundle.pl: deterministic output when using -t [62]
84-
o mqtt: deal with 0 byte reads correctly [4]
85-
o mqtt: handle POST/PUBLISH without a set POSTFIELDSIZE [1]
86-
o multi: set the PRETRANSFER time-stamp when we switch to PERFORM [59]
87-
o multi: skip DONE state if there's no connection left for ftp wildcard
88-
o multi: when erroring in TOOFAST state, act as for PERFORM [9]
89-
o multi_runsingle: bail out early on data->conn == NULL [74]
90-
o ngtcp2: Fix http3 upload stall [106]
91-
o ngtcp2: Fix stack buffer overflow [107]
92-
o ngtcp2: make it build it current master again [21]
93-
o nss: get the run-time version instead of build-time [67]
94-
o openssl: lowercase the hostname before using it for SNI [46]
95-
o OS400: update ccsidcurl.c [20]
96-
o pretransfer: setup the User-Agent header here [60]
97-
o quiche: remove fprintf() leftover
98-
o Revert "CI/github: work-around for brew breakage on macOS" [17]
99-
o runtests: add 'wakeup' as a feature
100-
o runtests: add support for %if [feature] conditions [19]
101-
o runtests: preprocess DISABLED to allow conditionals [93]
102-
o schannel: plug a memory-leak [64]
103-
o schannel_verify: fix safefree call typo [50]
104-
o select: convert Curl_select() to private static function [103]
105-
o socks: use the download buffer instead [86]
106-
o speedcheck: exclude paused transfers [42]
107-
o strerror: skip errnum >= 0 assertion on windows [78]
108-
o test1522: add debug tracing [3]
109-
o test1633: set appropriate name
110-
o test179: use consistent header line endings
111-
o test410: verify HTTPS GET with a 49K request header
112-
o tests/mqttd: extract the client id from the correct offset [13]
113-
o tests: make --libcurl tests only test FTP options if ftp enabled [18]
114-
o tool_doswin: Restore original console settings on CTRL signal [68]
115-
o tool_operate: fix the suppression logic of some error messages [33]
116-
o tool_operate: spellfix a comment
117-
o tooĺ_writeout: fix the -w time output units [6]
118-
o transfer: fix GCC 10 warning with flag '-Wint-in-bool-context' [79]
119-
o travis: build ngtcp2 --with-gnutls [72]
120-
o travis: limit the tests with quiche builds to HTTPS and FTPS only [44]
121-
o travis: restrict the openssl3 job to only run https and ftps tests [34]
122-
o url: if IDNA conversion fails, fallback to Transitional [29]
123-
o urldata: make magic be the first struct field [87]
124-
o urldata: remove 'local_ip' from the connectdata struct [97]
125-
o urldata: remove duplicate 'upkeep_interval_ms' from connectdata [96]
126-
o urldata: remove duplicate port number storage [98]
127-
o urldata: remove the duplicate 'ip_addr_str' field [100]
128-
o urldata: store ip version in a single byte [95]
129-
o vtls: remove md5sum [69]
130-
o warnless: remove curlx_ultosi [108]
131-
o wolfssl: add SECURE_RENEGOTIATION support [63]
132-
o wolfssl: Support wolfSSL builds missing TLS 1.1 [37]
15+
o configure: disable min version set for Darwin [19]
16+
o configure: include <time.h> unconditionally [16]
17+
o configure: remove use of RETSIGTYPE [17]
18+
o docs/HTTP3.md: update the build instruction using gnutls [20]
19+
o examples/hiperfifo.c: check event_initialized before delete [11]
20+
o file: support GETing directories again [10]
21+
o github/workflow: add "security-extended" to codeql-analysis.yml [14]
22+
o h2: allow 100 streams by default [9]
23+
o hostip: fix builds that disable all asynchronous DNS [1]
24+
o http_proxy: only loop on 407 + close if we have credentials [8]
25+
o install: add instructions for Apple Darwin platforms [18]
26+
o lib: remove unused HAVE_INET_NTOA_R* defines [15]
27+
o libssh: get rid of PATH_MAX [7]
28+
o ngtcp2+gnutls: clear credentials when freed [5]
29+
o ngtcp2: Use ALPN h3-29 for now [21]
30+
o ntlm: fix negotiated flags usage [12]
31+
o ntlm: support version 2 on 32-bit platforms [13]
32+
o openssl: fix CURLOPT_SSLCERT_BLOB without CURLOPT_SSLCERT_KEY [2]
33+
o TLS: fix HTTP/2 selection [3]
34+
o tool_progress: fix progress meter final update in parallel mode [6]
35+
o typecheck-gcc: make the ssl-ctx-cb check use SSL_CTX pointers [4]
13336

13437
This release includes the following known bugs:
13538

@@ -138,125 +41,34 @@ This release includes the following known bugs:
13841
This release would not have looked like this without help, code, reports and
13942
advice from friends like these:
14043

141-
0xflotus on github, Alessandro Ghedini, Andrey Gursky, Bubu on github,
142-
Cherish98 on github, Christoph M. Becker, Cory Benfield, Cristian Rodríguez,
143-
Dan Fandrich, Daniel Stenberg, David Earl, Denis Laxalde, Dennis Clarke,
144-
Dmitry Wagin, Douglas R. Reno, Earnestly on github, Emil Engler, Erik Olsson,
145-
Fabian Keil, Flameborn on github, Ganesh Kamath, Gergely Nagy, Gisle Vanem,
146-
Hans-Christian Noren Egtvedt, Harry Sintonen, Himanshu Gupta, Hongyi Zhao,
147-
Ian Spence, Ikko Ashimine, Jacob Hoffman-Andrews, Jeremy Thibault,
148-
Jon Rumsey, Jon Wilkes, Julian Montes, Kevin Ushey, Marcel Raad,
149-
Matthias Gatto, Matt Holt, Michał Antoniak, Mike Gelfand, Mike Tzou,
150-
Nick Zitzmann, Olaf Hering, parazyd on github, Patrick Monnerat, Paul Groke,
151-
Ray Satiro, Razvan Cojocaru, Rich Turner, Sai Ram Kunala, Sean McArthur,
152-
Tatsuhiro Tsujikawa, Tomas Berger, UrsusArctos on github, Viktor Szakats,
153-
William A. Rowe Jr, XhmikosR on github, 不确定
154-
(58 contributors)
155-
156-
Thanks! (and sorry if I forgot to mention someone)
44+
Anthony Shaw, Benbuck Nason, Cesar Eduardo Barros, Cherish98 on github,
45+
Christian Schmitz, Daniel Kurečka, Daniel Stenberg, David Hu, Emil Engler,
46+
Gilles Vollant, Jochem Broekhoff, Jürgen Gmach, Kenneth Davidson,
47+
locpyl-tidnyd on github, Luke Granger-Brown, Marcel Raad, Michael Forney,
48+
Muhammed Yavuz Nuzumlalı, Patrick Monnerat, Ray Satiro, romamik om github,
49+
Tatsuhiro Tsujikawa, Viktor Szakats,
50+
(23 contributors)
15751

15852
References to bug reports and discussions on issues:
15953

160-
[1] = https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28735
161-
[2] = https://curl.se/bug/?i=6208
162-
[3] = https://curl.se/bug/?i=6331
163-
[4] = https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28676
164-
[5] = https://curl.se/bug/?i=6318
165-
[6] = https://curl.se/bug/?i=6321
166-
[7] = https://curl.se/bug/?i=6328
167-
[8] = https://curl.se/bug/?i=6315
168-
[9] = https://curl.se/bug/?i=6333
169-
[10] = https://curl.se/bug/?i=6336
170-
[11] = https://curl.se/bug/?i=6354
171-
[12] = https://curl.se/bug/?i=6307
172-
[13] = https://curl.se/bug/?i=6334
173-
[14] = https://curl.se/bug/?i=6176
174-
[15] = https://curl.se/bug/?i=6285
175-
[16] = https://curl.se/bug/?i=6286
176-
[17] = https://curl.se/bug/?i=6332
177-
[18] = https://curl.se/bug/?i=6303
178-
[19] = https://curl.se/bug/?i=6304
179-
[20] = https://curl.se/bug/?i=6292
180-
[21] = https://curl.se/bug/?i=6296
181-
[22] = https://curl.se/bug/?i=6295
182-
[23] = https://curl.se/bug/?i=6289
183-
[24] = https://curl.se/bug/?i=6110
184-
[25] = https://curl.se/bug/?i=6199
185-
[26] = https://curl.se/bug/?i=5703
186-
[27] = https://curl.se/bug/?i=6341
187-
[28] = https://curl.se/bug/?i=6244
188-
[29] = https://curl.se/bug/?i=6423
189-
[30] = https://github.com/curl/curl/commit/08e8455dddc5e48e58a12ade3815c01ae3da3b64#commitcomment-45433279
190-
[31] = https://curl.se/bug/?i=6349
191-
[32] = https://curl.se/bug/?i=6435
192-
[33] = https://curl.se/mail/archive-2020-12/0017.html
193-
[34] = https://curl.se/bug/?i=6345
194-
[35] = https://curl.se/bug/?i=6365
195-
[36] = https://curl.se/bug/?i=6112
196-
[37] = https://curl.se/mail/lib-2020-12/0121.html
197-
[38] = https://curl.se/bug/?i=6366
198-
[39] = https://curl.se/bug/?i=6364
199-
[40] = https://curl.se/mail/lib-2020-12/0084.html
200-
[41] = https://curl.se/bug/?i=6360
201-
[42] = https://curl.se/bug/?i=6358
202-
[43] = https://curl.se/bug/?i=6356
203-
[44] = https://curl.se/bug/?i=6403
204-
[45] = https://curl.se/bug/?i=6397
205-
[46] = https://curl.se/bug/?i=6540
206-
[47] = https://curl.se/mail/archive-2020-12/0018.html
207-
[48] = https://curl.se/bug/?i=6361
208-
[49] = https://curl.se/bug/?i=6421
209-
[50] = https://curl.se/bug/?i=6459
210-
[51] = https://curl.se/bug/?i=6392
211-
[52] = https://curl.se/bug/?i=6378
212-
[53] = https://curl.se/bug/?i=6294
213-
[54] = https://curl.se/bug/?i=6408
214-
[55] = https://curl.se/bug/?i=6385
215-
[56] = https://curl.se/bug/?i=6380
216-
[57] = https://curl.se/bug/?i=6375
217-
[58] = https://curl.se/bug/?i=6455
218-
[59] = https://curl.se/bug/?i=6454
219-
[60] = https://curl.se/bug/?i=6312
220-
[61] = https://curl.se/bug/?i=6453
221-
[62] = https://curl.se/bug/?i=6413
222-
[63] = https://curl.se/bug/?i=6411
223-
[64] = https://curl.se/bug/?i=6457
224-
[65] = https://github.com/curl/curl/discussions/6427
225-
[66] = https://curl.se/bug/?i=6443
226-
[67] = https://curl.se/bug/?i=6445
227-
[68] = https://curl.se/bug/?i=6226
228-
[69] = https://curl.se/bug/?i=6557
229-
[70] = https://curl.se/bug/?i=6438
230-
[71] = https://curl.se/bug/?i=6436
231-
[72] = https://curl.se/bug/?i=6493
232-
[73] = https://curl.se/mail/lib-2021-01/0063.html
233-
[74] = https://curl.se/bug/?i=6433
234-
[75] = https://curl.se/bug/?i=6431
235-
[76] = https://curl.se/mail/lib-2021-01/0033.html
236-
[78] = https://curl.se/bug/?i=6504
237-
[79] = https://curl.se/bug/?i=6537
238-
[80] = https://twitter.com/mholt6/status/1352130240265375744
239-
[82] = https://curl.se/bug/?i=6483
240-
[83] = https://curl.se/bug/?i=6490
241-
[84] = https://curl.se/bug/?i=6382
242-
[85] = https://curl.se/bug/?i=6492
243-
[86] = https://curl.se/bug/?i=6491
244-
[87] = https://curl.se/bug/?i=6484
245-
[88] = https://curl.se/bug/?i=6489
246-
[92] = https://curl.se/mail/lib-2021-01/0095.html
247-
[93] = https://curl.se/bug/?i=6477
248-
[95] = https://curl.se/bug/?i=6534
249-
[96] = https://curl.se/bug/?i=6534
250-
[97] = https://curl.se/bug/?i=6534
251-
[98] = https://curl.se/bug/?i=6534
252-
[99] = https://curl.se/bug/?i=6481
253-
[100] = https://curl.se/bug/?i=6534
254-
[101] = https://curl.se/bug/?i=6425
255-
[102] = https://curl.se/bug/?i=6471
256-
[103] = https://curl.se/bug/?i=6531
257-
[104] = https://curl.se/bug/?i=6527
258-
[105] = https://curl.se/bug/?i=6533
259-
[106] = https://curl.se/bug/?i=6521
260-
[107] = https://curl.se/bug/?i=6521
261-
[108] = https://curl.se/bug/?i=6530
262-
[114] = https://curl.se/bug/?i=6519
54+
[1] = https://curl.se/bug/?i=6831
55+
[2] = https://curl.se/bug/?i=6816
56+
[3] = https://curl.se/bug/?i=6825
57+
[4] = https://curl.se/bug/?i=6818
58+
[5] = https://curl.se/bug/?i=6824
59+
[6] = https://curl.se/bug/?i=6840
60+
[7] = https://curl.se/bug/?i=6829
61+
[8] = https://curl.se/bug/?i=6828
62+
[9] = https://curl.se/bug/?i=6852
63+
[10] = https://curl.se/bug/?i=6845
64+
[11] = https://curl.se/bug/?i=6876
65+
[12] = https://curl.se/bug/?i=6813
66+
[13] = https://curl.se/bug/?i=6849
67+
[14] = https://curl.se/bug/?i=6815
68+
[15] = https://curl.se/bug/?i=6867
69+
[16] = https://curl.se/bug/?i=6859
70+
[17] = https://curl.se/bug/?i=6861
71+
[18] = https://curl.se/bug/?i=6860
72+
[19] = https://curl.se/bug/?i=6838
73+
[20] = https://curl.se/bug/?i=6857
74+
[21] = https://curl.se/bug/?i=6864

vendor/curl/include/curl/curl.h

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,8 @@ typedef enum {
155155
CURLSSLBACKEND_AXTLS = 10, /* never used since 7.63.0 */
156156
CURLSSLBACKEND_MBEDTLS = 11,
157157
CURLSSLBACKEND_MESALINK = 12,
158-
CURLSSLBACKEND_BEARSSL = 13
158+
CURLSSLBACKEND_BEARSSL = 13,
159+
CURLSSLBACKEND_RUSTLS = 14
159160
} curl_sslbackend;
160161

161162
/* aliases for library clones and renames */
@@ -2078,6 +2079,15 @@ typedef enum {
20782079
/* Parameters for V4 signature */
20792080
CURLOPT(CURLOPT_AWS_SIGV4, CURLOPTTYPE_STRINGPOINT, 305),
20802081

2082+
/* Same as CURLOPT_SSL_VERIFYPEER but for DOH (DNS-over-HTTPS) servers. */
2083+
CURLOPT(CURLOPT_DOH_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 306),
2084+
2085+
/* Same as CURLOPT_SSL_VERIFYHOST but for DOH (DNS-over-HTTPS) servers. */
2086+
CURLOPT(CURLOPT_DOH_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 307),
2087+
2088+
/* Same as CURLOPT_SSL_VERIFYSTATUS but for DOH (DNS-over-HTTPS) servers. */
2089+
CURLOPT(CURLOPT_DOH_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 308),
2090+
20812091
CURLOPT_LASTENTRY /* the last unused */
20822092
} CURLoption;
20832093

@@ -2751,8 +2761,9 @@ typedef enum {
27512761
CURLINFO_RETRY_AFTER = CURLINFO_OFF_T + 57,
27522762
CURLINFO_EFFECTIVE_METHOD = CURLINFO_STRING + 58,
27532763
CURLINFO_PROXY_ERROR = CURLINFO_LONG + 59,
2764+
CURLINFO_REFERER = CURLINFO_STRING + 60,
27542765

2755-
CURLINFO_LASTONE = 59
2766+
CURLINFO_LASTONE = 60
27562767
} CURLINFO;
27572768

27582769
/* CURLINFO_RESPONSE_CODE is the new name for the option previously known as
@@ -2953,6 +2964,7 @@ typedef struct curl_version_info_data curl_version_info_data;
29532964
#define CURL_VERSION_ZSTD (1<<26) /* zstd features are present */
29542965
#define CURL_VERSION_UNICODE (1<<27) /* Unicode support on Windows */
29552966
#define CURL_VERSION_HSTS (1<<28) /* HSTS is supported */
2967+
#define CURL_VERSION_GSASL (1<<29) /* libgsasl is supported */
29562968

29572969
/*
29582970
* NAME curl_version_info()

0 commit comments

Comments
 (0)