Skip to content

Commit 9263f27

Browse files
committed
Update libcurl to version 8.9.1.
1 parent 221447f commit 9263f27

File tree

253 files changed

+20864
-13022
lines changed

Some content is hidden

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

253 files changed

+20864
-13022
lines changed

ChangeLog

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ dd.mm.yy hh:mm - smooth alpha 0.9.11
77
- upgraded fribidi to version 1.0.14
88
- upgraded libcpuid to version 0.6.4
99
- upgraded libxml2 to version 2.13.3
10-
- upgraded libcurl to version 8.6.0
10+
- upgraded libcurl to version 8.9.1
1111
- upgraded libpng to version 1.6.43
1212
- upgraded libwebp to version 1.3.2
1313
- upgraded zlib to version 1.3.1

include/support/curl/curl.h

Lines changed: 111 additions & 92 deletions
Large diffs are not rendered by default.

include/support/curl/curlver.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@
3232

3333
/* This is the version number of the libcurl package from which this header
3434
file origins: */
35-
#define LIBCURL_VERSION "8.6.0"
35+
#define LIBCURL_VERSION "8.9.1"
3636

3737
/* The numeric version number is also available "in parts" by using these
3838
defines: */
3939
#define LIBCURL_VERSION_MAJOR 8
40-
#define LIBCURL_VERSION_MINOR 6
41-
#define LIBCURL_VERSION_PATCH 0
40+
#define LIBCURL_VERSION_MINOR 9
41+
#define LIBCURL_VERSION_PATCH 1
4242

4343
/* This is the numeric version of the libcurl version number, meant for easier
4444
parsing and comparisons by programs. The LIBCURL_VERSION_NUM define will
@@ -48,7 +48,7 @@
4848
4949
Where XX, YY and ZZ are the main version, release and patch numbers in
5050
hexadecimal (using 8 bits each). All three numbers are always represented
51-
using two digits. 1.2 would appear as "0x010200" while version 9.11.7
51+
using two digits. 1.2 would appear as "0x010200" while version 9.11.7
5252
appears as "0x090b07".
5353
5454
This 6-digit (24 bits) hexadecimal number does not show pre-release number,
@@ -59,7 +59,7 @@
5959
CURL_VERSION_BITS() macro since curl's own configure script greps for it
6060
and needs it to contain the full number.
6161
*/
62-
#define LIBCURL_VERSION_NUM 0x080600
62+
#define LIBCURL_VERSION_NUM 0x080901
6363

6464
/*
6565
* This is the date and time when the full source package was created. The
@@ -70,7 +70,7 @@
7070
*
7171
* "2007-11-23"
7272
*/
73-
#define LIBCURL_TIMESTAMP "2024-01-31"
73+
#define LIBCURL_TIMESTAMP "2024-07-31"
7474

7575
#define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z))
7676
#define CURL_AT_LEAST_VERSION(x,y,z) \

include/support/curl/easy.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ CURL_EXTERN void curl_easy_cleanup(CURL *curl);
5050
*
5151
* Request internal information from the curl session with this function.
5252
* The third argument MUST be pointing to the specific type of the used option
53-
* which is documented in each man page of the option. The data pointed to
53+
* which is documented in each manpage of the option. The data pointed to
5454
* will be filled in accordingly and can be relied upon only if the function
5555
* returns CURLE_OK. This function is intended to get used *AFTER* a performed
5656
* transfer, all results from this function are undefined until the transfer

include/support/curl/mprintf.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@
3232
extern "C" {
3333
#endif
3434

35-
#if (defined(__GNUC__) || defined(__clang__)) && \
35+
#if (defined(__GNUC__) || defined(__clang__) || \
36+
defined(__IAR_SYSTEMS_ICC__)) && \
3637
defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) && \
3738
!defined(CURL_NO_FMT_CHECKS)
3839
#if defined(__MINGW32__) && !defined(__clang__)

include/support/curl/multi.h

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
*
2525
***************************************************************************/
2626
/*
27-
This is an "external" header file. Don't give away any internals here!
27+
This is an "external" header file. Do not give away any internals here!
2828
2929
GOALS
3030
@@ -66,7 +66,7 @@ typedef enum {
6666
CURLM_OK,
6767
CURLM_BAD_HANDLE, /* the passed-in handle is not a valid CURLM handle */
6868
CURLM_BAD_EASY_HANDLE, /* an easy handle was not good/valid */
69-
CURLM_OUT_OF_MEMORY, /* if you ever get this, you're in deep sh*t */
69+
CURLM_OUT_OF_MEMORY, /* if you ever get this, you are in deep sh*t */
7070
CURLM_INTERNAL_ERROR, /* this is a libcurl bug */
7171
CURLM_BAD_SOCKET, /* the passed in socket argument did not match */
7272
CURLM_UNKNOWN_OPTION, /* curl_multi_setopt() with unsupported option */
@@ -109,7 +109,7 @@ struct CURLMsg {
109109
typedef struct CURLMsg CURLMsg;
110110

111111
/* Based on poll(2) structure and values.
112-
* We don't use pollfd and POLL* constants explicitly
112+
* We do not use pollfd and POLL* constants explicitly
113113
* to cover platforms without poll(). */
114114
#define CURL_WAIT_POLLIN 0x0001
115115
#define CURL_WAIT_POLLPRI 0x0002
@@ -205,7 +205,7 @@ CURL_EXTERN CURLMcode curl_multi_wakeup(CURLM *multi_handle);
205205
/*
206206
* Name: curl_multi_perform()
207207
*
208-
* Desc: When the app thinks there's data available for curl it calls this
208+
* Desc: When the app thinks there is data available for curl it calls this
209209
* function to read/write whatever there is right now. This returns
210210
* as soon as the reads and writes are done. This function does not
211211
* require that there actually is data available for reading or that
@@ -236,7 +236,7 @@ CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
236236
/*
237237
* Name: curl_multi_info_read()
238238
*
239-
* Desc: Ask the multi handle if there's any messages/informationals from
239+
* Desc: Ask the multi handle if there is any messages/informationals from
240240
* the individual transfers. Messages include informationals such as
241241
* error code from the transfer or just the fact that a transfer is
242242
* completed. More details on these should be written down as well.
@@ -253,7 +253,7 @@ CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
253253
* we will provide the particular "transfer handle" in that struct
254254
* and that should/could/would be used in subsequent
255255
* curl_easy_getinfo() calls (or similar). The point being that we
256-
* must never expose complex structs to applications, as then we'll
256+
* must never expose complex structs to applications, as then we will
257257
* undoubtably get backwards compatibility problems in the future.
258258
*
259259
* Returns: A pointer to a filled-in struct, or NULL if it failed or ran out
@@ -268,7 +268,7 @@ CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
268268
* Name: curl_multi_strerror()
269269
*
270270
* Desc: The curl_multi_strerror function may be used to turn a CURLMcode
271-
* value into the equivalent human readable error string. This is
271+
* value into the equivalent human readable error string. This is
272272
* useful for printing meaningful error messages.
273273
*
274274
* Returns: A pointer to a null-terminated error message.
@@ -282,7 +282,7 @@ CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
282282
* Desc: An alternative version of curl_multi_perform() that allows the
283283
* application to pass in one of the file descriptors that have been
284284
* detected to have "action" on them and let libcurl perform.
285-
* See man page for details.
285+
* See manpage for details.
286286
*/
287287
#define CURL_POLL_NONE 0
288288
#define CURL_POLL_IN 1
@@ -464,6 +464,20 @@ typedef int (*curl_push_callback)(CURL *parent,
464464
struct curl_pushheaders *headers,
465465
void *userp);
466466

467+
/*
468+
* Name: curl_multi_waitfds()
469+
*
470+
* Desc: Ask curl for fds for polling. The app can use these to poll on.
471+
* We want curl_multi_perform() called as soon as one of them are
472+
* ready. Passing zero size allows to get just a number of fds.
473+
*
474+
* Returns: CURLMcode type, general multi error code.
475+
*/
476+
CURL_EXTERN CURLMcode curl_multi_waitfds(CURLM *multi,
477+
struct curl_waitfd *ufds,
478+
unsigned int size,
479+
unsigned int *fd_count);
480+
467481
#ifdef __cplusplus
468482
} /* end of extern "C" */
469483
#endif

include/support/curl/system.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
* As a general rule, curl_off_t shall not be mapped to off_t. This rule shall
4747
* only be violated if off_t is the only 64-bit data type available and the
4848
* size of off_t is independent of large file support settings. Keep your
49-
* build on the safe side avoiding an off_t gating. If you have a 64-bit
49+
* build on the safe side avoiding an off_t gating. If you have a 64-bit
5050
* off_t then take for sure that another 64-bit data type exists, dig deeper
5151
* and you will find it.
5252
*
@@ -402,7 +402,7 @@
402402
# define CURL_PULL_SYS_SOCKET_H 1
403403

404404
#else
405-
/* generic "safe guess" on old 32 bit style */
405+
/* generic "safe guess" on old 32-bit style */
406406
# define CURL_TYPEOF_CURL_OFF_T long
407407
# define CURL_FORMAT_CURL_OFF_T "ld"
408408
# define CURL_FORMAT_CURL_OFF_TU "lu"

include/support/curl/typecheck-gcc.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@
3434
* _curl_easy_setopt_err_sometype below
3535
*
3636
* NOTE: We use two nested 'if' statements here instead of the && operator, in
37-
* order to work around gcc bug #32061. It affects only gcc 4.3.x/4.4.x
37+
* order to work around gcc bug #32061. It affects only gcc 4.3.x/4.4.x
3838
* when compiling with -Wlogical-op.
3939
*
40-
* To add an option that uses the same type as an existing option, you'll just
41-
* need to extend the appropriate _curl_*_option macro
40+
* To add an option that uses the same type as an existing option, you will
41+
* just need to extend the appropriate _curl_*_option macro
4242
*/
4343
#define curl_easy_setopt(handle, option, value) \
4444
__extension__({ \
@@ -245,7 +245,7 @@ CURLWARNING(_curl_easy_getinfo_err_curl_off_t,
245245

246246
/* To add a new option to one of the groups, just add
247247
* (option) == CURLOPT_SOMETHING
248-
* to the or-expression. If the option takes a long or curl_off_t, you don't
248+
* to the or-expression. If the option takes a long or curl_off_t, you do not
249249
* have to do anything
250250
*/
251251

@@ -275,6 +275,7 @@ CURLWARNING(_curl_easy_getinfo_err_curl_off_t,
275275
(option) == CURLOPT_DNS_LOCAL_IP6 || \
276276
(option) == CURLOPT_DNS_SERVERS || \
277277
(option) == CURLOPT_DOH_URL || \
278+
(option) == CURLOPT_ECH || \
278279
(option) == CURLOPT_EGDSOCKET || \
279280
(option) == CURLOPT_FTP_ACCOUNT || \
280281
(option) == CURLOPT_FTP_ALTERNATIVE_TO_USER || \
@@ -677,7 +678,7 @@ typedef CURLcode (*_curl_ssl_ctx_callback4)(CURL *, const void *,
677678
const void *);
678679
#ifdef HEADER_SSL_H
679680
/* hack: if we included OpenSSL's ssl.h, we know about SSL_CTX
680-
* this will of course break if we're included before OpenSSL headers...
681+
* this will of course break if we are included before OpenSSL headers...
681682
*/
682683
typedef CURLcode (*_curl_ssl_ctx_callback5)(CURL *, SSL_CTX *, void *);
683684
typedef CURLcode (*_curl_ssl_ctx_callback6)(CURL *, SSL_CTX *, const void *);

include/support/curl/urlapi.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,12 @@ typedef enum {
9797
#define CURLU_NO_AUTHORITY (1<<10) /* Allow empty authority when the
9898
scheme is unknown. */
9999
#define CURLU_ALLOW_SPACE (1<<11) /* Allow spaces in the URL */
100-
#define CURLU_PUNYCODE (1<<12) /* get the host name in punycode */
100+
#define CURLU_PUNYCODE (1<<12) /* get the hostname in punycode */
101101
#define CURLU_PUNY2IDN (1<<13) /* punycode => IDN conversion */
102+
#define CURLU_GET_EMPTY (1<<14) /* allow empty queries and fragments
103+
when extracting the URL or the
104+
components */
105+
#define CURLU_NO_GUESS_SCHEME (1<<15) /* for get, do not accept a guess */
102106

103107
typedef struct Curl_URL CURLU;
104108

@@ -139,7 +143,7 @@ CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what,
139143

140144
/*
141145
* curl_url_strerror() turns a CURLUcode value into the equivalent human
142-
* readable error string. This is useful for printing meaningful error
146+
* readable error string. This is useful for printing meaningful error
143147
* messages.
144148
*/
145149
CURL_EXTERN const char *curl_url_strerror(CURLUcode);

libraries/libcurl/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ ifeq ($(BUILD_OSX),True)
1818
endif
1919

2020
# Enter object files here:
21-
OBJECTS = altsvc.o asyn-ares.o asyn-thread.o base64.o bufq.o bufref.o c-hyper.o cf-h1-proxy.o cf-h2-proxy.o cf-haproxy.o cf-https-connect.o cf-socket.o cfilters.o conncache.o connect.o content_encoding.o cookie.o curl_addrinfo.o curl_des.o curl_endian.o curl_fnmatch.o curl_get_line.o curl_gethostname.o curl_gssapi.o curl_memrchr.o curl_multibyte.o curl_ntlm_core.o curl_ntlm_wb.o curl_path.o curl_range.o curl_rtmp.o curl_sasl.o curl_sspi.o curl_threads.o curl_trc.o dict.o doh.o dynbuf.o dynhds.o easy.o easygetopt.o easyoptions.o escape.o file.o fileinfo.o fopen.o formdata.o ftp.o ftplistparser.o getenv.o getinfo.o gopher.o hash.o headers.o hmac.o hostasyn.o hostip.o hostip4.o hostip6.o hostsyn.o hsts.o http.o http_aws_sigv4.o http_chunks.o http_digest.o http_negotiate.o http_ntlm.o http_proxy.o http1.o http2.o idn.o if2ip.o imap.o inet_ntop.o inet_pton.o krb5.o ldap.o llist.o md4.o md5.o memdebug.o mime.o mprintf.o mqtt.o multi.o netrc.o nonblock.o noproxy.o openldap.o parsedate.o pingpong.o pop3.o progress.o psl.o rand.o rename.o rtsp.o select.o sendf.o setopt.o sha256.o share.o slist.o smb.o smtp.o socks.o socks_gssapi.o socks_sspi.o speedcheck.o socketpair.o splay.o strcase.o strdup.o strerror.o strtok.o strtoofft.o telnet.o tftp.o timediff.o timeval.o transfer.o url.o urlapi.o version.o warnless.o ws.o
21+
OBJECTS = altsvc.o asyn-ares.o asyn-thread.o base64.o bufq.o bufref.o c-hyper.o cf-h1-proxy.o cf-h2-proxy.o cf-haproxy.o cf-https-connect.o cf-socket.o cfilters.o conncache.o connect.o content_encoding.o cookie.o curl_addrinfo.o curl_des.o curl_endian.o curl_fnmatch.o curl_get_line.o curl_gethostname.o curl_gssapi.o curl_memrchr.o curl_multibyte.o curl_ntlm_core.o curl_path.o curl_range.o curl_rtmp.o curl_sasl.o curl_sha512_256.o curl_sspi.o curl_threads.o curl_trc.o cw-out.o dict.o doh.o dynbuf.o dynhds.o easy.o easygetopt.o easyoptions.o escape.o file.o fileinfo.o fopen.o formdata.o ftp.o ftplistparser.o getenv.o getinfo.o gopher.o hash.o headers.o hmac.o hostasyn.o hostip.o hostip4.o hostip6.o hostsyn.o hsts.o http.o http_aws_sigv4.o http_chunks.o http_digest.o http_negotiate.o http_ntlm.o http_proxy.o http1.o http2.o idn.o if2ip.o imap.o inet_ntop.o inet_pton.o krb5.o ldap.o llist.o md4.o md5.o memdebug.o mime.o mprintf.o mqtt.o multi.o netrc.o nonblock.o noproxy.o openldap.o parsedate.o pingpong.o pop3.o progress.o psl.o rand.o rename.o request.o rtsp.o select.o sendf.o setopt.o sha256.o share.o slist.o smb.o smtp.o socks.o socks_gssapi.o socks_sspi.o speedcheck.o socketpair.o splay.o strcase.o strdup.o strerror.o strtok.o strtoofft.o telnet.o tftp.o timediff.o timeval.o transfer.o url.o urlapi.o version.o warnless.o ws.o
2222

2323
ifeq ($(BUILD_WIN32),True)
2424
OBJECTS += system_win32.o version_win32.o
@@ -31,7 +31,7 @@ endif
3131
OBJECTS += vauth/cleartext.o vauth/cram.o vauth/digest.o vauth/digest_sspi.o vauth/gsasl.o vauth/krb5_gssapi.o vauth/krb5_sspi.o vauth/ntlm.o vauth/ntlm_sspi.o vauth/oauth2.o vauth/spnego_gssapi.o vauth/spnego_sspi.o vauth/vauth.o
3232
OBJECTS += vquic/curl_msh3.o vquic/curl_ngtcp2.o vquic/curl_osslq.o vquic/curl_quiche.o vquic/vquic.o vquic/vquic-tls.o
3333
OBJECTS += vssh/libssh.o vssh/libssh2.o vssh/wolfssh.o
34-
OBJECTS += vtls/bearssl.o vtls/gtls.o vtls/hostcheck.o vtls/keylog.o vtls/mbedtls.o vtls/mbedtls_threadlock.o vtls/openssl.o vtls/rustls.o vtls/vtls.o vtls/wolfssl.o vtls/x509asn1.o
34+
OBJECTS += vtls/bearssl.o vtls/cipher_suite.o vtls/gtls.o vtls/hostcheck.o vtls/keylog.o vtls/mbedtls.o vtls/mbedtls_threadlock.o vtls/openssl.o vtls/rustls.o vtls/vtls.o vtls/wolfssl.o vtls/x509asn1.o
3535

3636
ifeq ($(BUILD_WIN32),True)
3737
OBJECTS += vtls/schannel.o vtls/schannel_verify.o

0 commit comments

Comments
 (0)