Skip to content

Commit 6ef91e2

Browse files
committed
Update curl bindings to 8.17
1 parent be943e9 commit 6ef91e2

File tree

14 files changed

+627
-353
lines changed

14 files changed

+627
-353
lines changed

vendor/curl/c/curl.h

Lines changed: 121 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@
102102
#include <sys/time.h>
103103
#endif
104104

105-
#ifdef __cplusplus
105+
#ifdef __cplusplus
106106
extern "C" {
107107
#endif
108108

@@ -124,7 +124,7 @@ typedef void CURLSH;
124124
#elif defined(_WIN32) || \
125125
(CURL_HAS_DECLSPEC_ATTRIBUTE(dllexport) && \
126126
CURL_HAS_DECLSPEC_ATTRIBUTE(dllimport))
127-
# if defined(BUILDING_LIBCURL)
127+
# ifdef BUILDING_LIBCURL
128128
# define CURL_EXTERN __declspec(dllexport)
129129
# else
130130
# define CURL_EXTERN __declspec(dllimport)
@@ -401,12 +401,12 @@ typedef int (*curl_seek_callback)(void *instream,
401401
#define CURL_TRAILERFUNC_ABORT 1
402402

403403
typedef size_t (*curl_read_callback)(char *buffer,
404-
size_t size,
405-
size_t nitems,
406-
void *instream);
404+
size_t size,
405+
size_t nitems,
406+
void *instream);
407407

408408
typedef int (*curl_trailer_callback)(struct curl_slist **list,
409-
void *userdata);
409+
void *userdata);
410410

411411
typedef enum {
412412
CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */
@@ -788,20 +788,24 @@ typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl, /* easy handle */
788788
mbedtls_ssl_config */
789789
void *userptr);
790790

791+
#define CURLPROXY_HTTP 0L /* added in 7.10, new in 7.19.4 default is
792+
to use CONNECT HTTP/1.1 */
793+
#define CURLPROXY_HTTP_1_0 1L /* force to use CONNECT HTTP/1.0
794+
added in 7.19.4 */
795+
#define CURLPROXY_HTTPS 2L /* HTTPS but stick to HTTP/1
796+
added in 7.52.0 */
797+
#define CURLPROXY_HTTPS2 3L /* HTTPS and attempt HTTP/2
798+
added in 8.2.0 */
799+
#define CURLPROXY_SOCKS4 4L /* support added in 7.15.2, enum existed
800+
already in 7.10 */
801+
#define CURLPROXY_SOCKS5 5L /* added in 7.10 */
802+
#define CURLPROXY_SOCKS4A 6L /* added in 7.18.0 */
803+
#define CURLPROXY_SOCKS5_HOSTNAME 7L /* Use the SOCKS5 protocol but pass along
804+
the hostname rather than the IP
805+
address. added in 7.18.0 */
806+
791807
typedef enum {
792-
CURLPROXY_HTTP = 0, /* added in 7.10, new in 7.19.4 default is to use
793-
CONNECT HTTP/1.1 */
794-
CURLPROXY_HTTP_1_0 = 1, /* added in 7.19.4, force to use CONNECT
795-
HTTP/1.0 */
796-
CURLPROXY_HTTPS = 2, /* HTTPS but stick to HTTP/1 added in 7.52.0 */
797-
CURLPROXY_HTTPS2 = 3, /* HTTPS and attempt HTTP/2 added in 8.2.0 */
798-
CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already
799-
in 7.10 */
800-
CURLPROXY_SOCKS5 = 5, /* added in 7.10 */
801-
CURLPROXY_SOCKS4A = 6, /* added in 7.18.0 */
802-
CURLPROXY_SOCKS5_HOSTNAME = 7 /* Use the SOCKS5 protocol but pass along the
803-
hostname rather than the IP address. added
804-
in 7.18.0 */
808+
CURLPROXY_LAST = 8 /* never use */
805809
} curl_proxytype; /* this enum was added in 7.10 */
806810

807811
/*
@@ -842,19 +846,19 @@ typedef enum {
842846
#define CURLAUTH_ANY (~CURLAUTH_DIGEST_IE)
843847
#define CURLAUTH_ANYSAFE (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE))
844848

845-
#define CURLSSH_AUTH_ANY ~0 /* all types supported by the server */
846-
#define CURLSSH_AUTH_NONE 0 /* none allowed, silly but complete */
847-
#define CURLSSH_AUTH_PUBLICKEY (1<<0) /* public/private key files */
848-
#define CURLSSH_AUTH_PASSWORD (1<<1) /* password */
849-
#define CURLSSH_AUTH_HOST (1<<2) /* host key files */
850-
#define CURLSSH_AUTH_KEYBOARD (1<<3) /* keyboard interactive */
851-
#define CURLSSH_AUTH_AGENT (1<<4) /* agent (ssh-agent, pageant...) */
852-
#define CURLSSH_AUTH_GSSAPI (1<<5) /* gssapi (kerberos, ...) */
849+
#define CURLSSH_AUTH_ANY ~0L /* all types supported by the server */
850+
#define CURLSSH_AUTH_NONE 0L /* none allowed, silly but complete */
851+
#define CURLSSH_AUTH_PUBLICKEY (1L<<0) /* public/private key files */
852+
#define CURLSSH_AUTH_PASSWORD (1L<<1) /* password */
853+
#define CURLSSH_AUTH_HOST (1L<<2) /* host key files */
854+
#define CURLSSH_AUTH_KEYBOARD (1L<<3) /* keyboard interactive */
855+
#define CURLSSH_AUTH_AGENT (1L<<4) /* agent (ssh-agent, pageant...) */
856+
#define CURLSSH_AUTH_GSSAPI (1L<<5) /* gssapi (kerberos, ...) */
853857
#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY
854858

855-
#define CURLGSSAPI_DELEGATION_NONE 0 /* no delegation (default) */
856-
#define CURLGSSAPI_DELEGATION_POLICY_FLAG (1<<0) /* if permitted by policy */
857-
#define CURLGSSAPI_DELEGATION_FLAG (1<<1) /* delegate always */
859+
#define CURLGSSAPI_DELEGATION_NONE 0L /* no delegation (default) */
860+
#define CURLGSSAPI_DELEGATION_POLICY_FLAG (1L<<0) /* if permitted by policy */
861+
#define CURLGSSAPI_DELEGATION_FLAG (1L<<1) /* delegate always */
858862

859863
#define CURL_ERROR_SIZE 256
860864

@@ -979,50 +983,55 @@ typedef enum {
979983
#endif /* !CURL_NO_OLDIES */
980984

981985
/* parameter for the CURLOPT_FTP_SSL_CCC option */
986+
#define CURLFTPSSL_CCC_NONE 0L /* do not send CCC */
987+
#define CURLFTPSSL_CCC_PASSIVE 1L /* Let the server initiate the shutdown */
988+
#define CURLFTPSSL_CCC_ACTIVE 2L /* Initiate the shutdown */
989+
982990
typedef enum {
983-
CURLFTPSSL_CCC_NONE, /* do not send CCC */
984-
CURLFTPSSL_CCC_PASSIVE, /* Let the server initiate the shutdown */
985-
CURLFTPSSL_CCC_ACTIVE, /* Initiate the shutdown */
986-
CURLFTPSSL_CCC_LAST /* not an option, never use */
991+
CURLFTPSSL_CCC_LAST = 3 /* not an option, never use */
987992
} curl_ftpccc;
988993

989994
/* parameter for the CURLOPT_FTPSSLAUTH option */
995+
#define CURLFTPAUTH_DEFAULT 0L /* let libcurl decide */
996+
#define CURLFTPAUTH_SSL 1L /* use "AUTH SSL" */
997+
#define CURLFTPAUTH_TLS 2L /* use "AUTH TLS" */
998+
990999
typedef enum {
991-
CURLFTPAUTH_DEFAULT, /* let libcurl decide */
992-
CURLFTPAUTH_SSL, /* use "AUTH SSL" */
993-
CURLFTPAUTH_TLS, /* use "AUTH TLS" */
994-
CURLFTPAUTH_LAST /* not an option, never use */
1000+
CURLFTPAUTH_LAST = 3 /* not an option, never use */
9951001
} curl_ftpauth;
9961002

9971003
/* parameter for the CURLOPT_FTP_CREATE_MISSING_DIRS option */
1004+
#define CURLFTP_CREATE_DIR_NONE 0L /* do NOT create missing dirs! */
1005+
#define CURLFTP_CREATE_DIR 1L /* (FTP/SFTP) if CWD fails, try MKD and
1006+
then CWD again if MKD succeeded, for
1007+
SFTP this does similar magic */
1008+
#define CURLFTP_CREATE_DIR_RETRY 2L /* (FTP only) if CWD fails, try MKD and
1009+
then CWD again even if MKD failed! */
1010+
9981011
typedef enum {
999-
CURLFTP_CREATE_DIR_NONE, /* do NOT create missing dirs! */
1000-
CURLFTP_CREATE_DIR, /* (FTP/SFTP) if CWD fails, try MKD and then CWD
1001-
again if MKD succeeded, for SFTP this does
1002-
similar magic */
1003-
CURLFTP_CREATE_DIR_RETRY, /* (FTP only) if CWD fails, try MKD and then CWD
1004-
again even if MKD failed! */
1005-
CURLFTP_CREATE_DIR_LAST /* not an option, never use */
1012+
CURLFTP_CREATE_DIR_LAST = 3 /* not an option, never use */
10061013
} curl_ftpcreatedir;
10071014

10081015
/* parameter for the CURLOPT_FTP_FILEMETHOD option */
1016+
#define CURLFTPMETHOD_DEFAULT 0L /* let libcurl pick */
1017+
#define CURLFTPMETHOD_MULTICWD 1L /* single CWD operation for each path
1018+
part */
1019+
#define CURLFTPMETHOD_NOCWD 2L /* no CWD at all */
1020+
#define CURLFTPMETHOD_SINGLECWD 3L /* one CWD to full dir, then work on file */
1021+
10091022
typedef enum {
1010-
CURLFTPMETHOD_DEFAULT, /* let libcurl pick */
1011-
CURLFTPMETHOD_MULTICWD, /* single CWD operation for each path part */
1012-
CURLFTPMETHOD_NOCWD, /* no CWD at all */
1013-
CURLFTPMETHOD_SINGLECWD, /* one CWD to full dir, then work on file */
1014-
CURLFTPMETHOD_LAST /* not an option, never use */
1023+
CURLFTPMETHOD_LAST = 4 /* not an option, never use */
10151024
} curl_ftpmethod;
10161025

10171026
/* bitmask defines for CURLOPT_HEADEROPT */
1018-
#define CURLHEADER_UNIFIED 0
1019-
#define CURLHEADER_SEPARATE (1<<0)
1027+
#define CURLHEADER_UNIFIED 0L
1028+
#define CURLHEADER_SEPARATE (1L<<0)
10201029

10211030
/* CURLALTSVC_* are bits for the CURLOPT_ALTSVC_CTRL option */
1022-
#define CURLALTSVC_READONLYFILE (1<<2)
1023-
#define CURLALTSVC_H1 (1<<3)
1024-
#define CURLALTSVC_H2 (1<<4)
1025-
#define CURLALTSVC_H3 (1<<5)
1031+
#define CURLALTSVC_READONLYFILE (1L<<2)
1032+
#define CURLALTSVC_H1 (1L<<3)
1033+
#define CURLALTSVC_H2 (1L<<4)
1034+
#define CURLALTSVC_H3 (1L<<5)
10261035

10271036
/* bitmask values for CURLOPT_UPLOAD_FLAGS */
10281037
#define CURLULFLAG_ANSWERED (1L<<0)
@@ -1058,42 +1067,42 @@ typedef CURLSTScode (*curl_hstswrite_callback)(CURL *easy,
10581067
void *userp);
10591068

10601069
/* CURLHSTS_* are bits for the CURLOPT_HSTS option */
1061-
#define CURLHSTS_ENABLE (long)(1<<0)
1062-
#define CURLHSTS_READONLYFILE (long)(1<<1)
1070+
#define CURLHSTS_ENABLE (1L<<0)
1071+
#define CURLHSTS_READONLYFILE (1L<<1)
10631072

10641073
/* The CURLPROTO_ defines below are for the **deprecated** CURLOPT_*PROTOCOLS
10651074
options. Do not use. */
1066-
#define CURLPROTO_HTTP (1<<0)
1067-
#define CURLPROTO_HTTPS (1<<1)
1068-
#define CURLPROTO_FTP (1<<2)
1069-
#define CURLPROTO_FTPS (1<<3)
1070-
#define CURLPROTO_SCP (1<<4)
1071-
#define CURLPROTO_SFTP (1<<5)
1072-
#define CURLPROTO_TELNET (1<<6)
1073-
#define CURLPROTO_LDAP (1<<7)
1074-
#define CURLPROTO_LDAPS (1<<8)
1075-
#define CURLPROTO_DICT (1<<9)
1076-
#define CURLPROTO_FILE (1<<10)
1077-
#define CURLPROTO_TFTP (1<<11)
1078-
#define CURLPROTO_IMAP (1<<12)
1079-
#define CURLPROTO_IMAPS (1<<13)
1080-
#define CURLPROTO_POP3 (1<<14)
1081-
#define CURLPROTO_POP3S (1<<15)
1082-
#define CURLPROTO_SMTP (1<<16)
1083-
#define CURLPROTO_SMTPS (1<<17)
1084-
#define CURLPROTO_RTSP (1<<18)
1085-
#define CURLPROTO_RTMP (1<<19)
1086-
#define CURLPROTO_RTMPT (1<<20)
1087-
#define CURLPROTO_RTMPE (1<<21)
1088-
#define CURLPROTO_RTMPTE (1<<22)
1089-
#define CURLPROTO_RTMPS (1<<23)
1090-
#define CURLPROTO_RTMPTS (1<<24)
1091-
#define CURLPROTO_GOPHER (1<<25)
1092-
#define CURLPROTO_SMB (1<<26)
1093-
#define CURLPROTO_SMBS (1<<27)
1094-
#define CURLPROTO_MQTT (1<<28)
1095-
#define CURLPROTO_GOPHERS (1<<29)
1096-
#define CURLPROTO_ALL (~0) /* enable everything */
1075+
#define CURLPROTO_HTTP (1L<<0)
1076+
#define CURLPROTO_HTTPS (1L<<1)
1077+
#define CURLPROTO_FTP (1L<<2)
1078+
#define CURLPROTO_FTPS (1L<<3)
1079+
#define CURLPROTO_SCP (1L<<4)
1080+
#define CURLPROTO_SFTP (1L<<5)
1081+
#define CURLPROTO_TELNET (1L<<6)
1082+
#define CURLPROTO_LDAP (1L<<7)
1083+
#define CURLPROTO_LDAPS (1L<<8)
1084+
#define CURLPROTO_DICT (1L<<9)
1085+
#define CURLPROTO_FILE (1L<<10)
1086+
#define CURLPROTO_TFTP (1L<<11)
1087+
#define CURLPROTO_IMAP (1L<<12)
1088+
#define CURLPROTO_IMAPS (1L<<13)
1089+
#define CURLPROTO_POP3 (1L<<14)
1090+
#define CURLPROTO_POP3S (1L<<15)
1091+
#define CURLPROTO_SMTP (1L<<16)
1092+
#define CURLPROTO_SMTPS (1L<<17)
1093+
#define CURLPROTO_RTSP (1L<<18)
1094+
#define CURLPROTO_RTMP (1L<<19)
1095+
#define CURLPROTO_RTMPT (1L<<20)
1096+
#define CURLPROTO_RTMPE (1L<<21)
1097+
#define CURLPROTO_RTMPTE (1L<<22)
1098+
#define CURLPROTO_RTMPS (1L<<23)
1099+
#define CURLPROTO_RTMPTS (1L<<24)
1100+
#define CURLPROTO_GOPHER (1L<<25)
1101+
#define CURLPROTO_SMB (1L<<26)
1102+
#define CURLPROTO_SMBS (1L<<27)
1103+
#define CURLPROTO_MQTT (1L<<28)
1104+
#define CURLPROTO_GOPHERS (1L<<29)
1105+
#define CURLPROTO_ALL (~0L) /* enable everything */
10971106

10981107
/* long may be 32 or 64 bits, but we should never depend on anything else
10991108
but 32 */
@@ -1348,7 +1357,8 @@ typedef enum {
13481357
/* Set the krb4/5 security level, this also enables krb4/5 awareness. This
13491358
* is a string, 'clear', 'safe', 'confidential' or 'private'. If the string
13501359
* is set but does not match one of these, 'private' will be used. */
1351-
CURLOPT(CURLOPT_KRBLEVEL, CURLOPTTYPE_STRINGPOINT, 63),
1360+
CURLOPTDEPRECATED(CURLOPT_KRBLEVEL, CURLOPTTYPE_STRINGPOINT, 63,
1361+
8.17.0, "removed"),
13521362

13531363
/* Set if we should verify the peer in ssl handshake, set 1 to verify. */
13541364
CURLOPT(CURLOPT_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 64),
@@ -1943,8 +1953,7 @@ typedef enum {
19431953
/* Pass in a bitmask of "header options" */
19441954
CURLOPT(CURLOPT_HEADEROPT, CURLOPTTYPE_VALUES, 229),
19451955

1946-
/* The public key in DER form used to validate the peer public key
1947-
this option is used only if SSL_VERIFYPEER is true */
1956+
/* The public key used to validate the peer public key */
19481957
CURLOPT(CURLOPT_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 230),
19491958

19501959
/* Path to Unix domain socket */
@@ -2354,18 +2363,18 @@ enum CURL_NETRC_OPTION {
23542363
CURL_NETRC_LAST = 3
23552364
};
23562365

2357-
#define CURL_SSLVERSION_DEFAULT 0
2358-
#define CURL_SSLVERSION_TLSv1 1 /* TLS 1.x */
2359-
#define CURL_SSLVERSION_SSLv2 2
2360-
#define CURL_SSLVERSION_SSLv3 3
2361-
#define CURL_SSLVERSION_TLSv1_0 4
2362-
#define CURL_SSLVERSION_TLSv1_1 5
2363-
#define CURL_SSLVERSION_TLSv1_2 6
2364-
#define CURL_SSLVERSION_TLSv1_3 7
2366+
#define CURL_SSLVERSION_DEFAULT 0L
2367+
#define CURL_SSLVERSION_TLSv1 1L /* TLS 1.x */
2368+
#define CURL_SSLVERSION_SSLv2 2L
2369+
#define CURL_SSLVERSION_SSLv3 3L
2370+
#define CURL_SSLVERSION_TLSv1_0 4L
2371+
#define CURL_SSLVERSION_TLSv1_1 5L
2372+
#define CURL_SSLVERSION_TLSv1_2 6L
2373+
#define CURL_SSLVERSION_TLSv1_3 7L
23652374

2366-
#define CURL_SSLVERSION_LAST 8 /* never use, keep last */
2375+
#define CURL_SSLVERSION_LAST 8L /* never use, keep last */
23672376

2368-
#define CURL_SSLVERSION_MAX_NONE 0
2377+
#define CURL_SSLVERSION_MAX_NONE 0L
23692378
#define CURL_SSLVERSION_MAX_DEFAULT (CURL_SSLVERSION_TLSv1 << 16)
23702379
#define CURL_SSLVERSION_MAX_TLSv1_0 (CURL_SSLVERSION_TLSv1_0 << 16)
23712380
#define CURL_SSLVERSION_MAX_TLSv1_1 (CURL_SSLVERSION_TLSv1_1 << 16)
@@ -2389,10 +2398,10 @@ enum CURL_TLSAUTH {
23892398
can be bitwise ORed so that CURL_REDIR_POST_301 | CURL_REDIR_POST_302
23902399
| CURL_REDIR_POST_303 == CURL_REDIR_POST_ALL */
23912400

2392-
#define CURL_REDIR_GET_ALL 0
2393-
#define CURL_REDIR_POST_301 1
2394-
#define CURL_REDIR_POST_302 2
2395-
#define CURL_REDIR_POST_303 4
2401+
#define CURL_REDIR_GET_ALL 0L
2402+
#define CURL_REDIR_POST_301 1L
2403+
#define CURL_REDIR_POST_302 2L
2404+
#define CURL_REDIR_POST_303 4L
23962405
#define CURL_REDIR_POST_ALL \
23972406
(CURL_REDIR_POST_301|CURL_REDIR_POST_302|CURL_REDIR_POST_303)
23982407

@@ -2421,7 +2430,7 @@ typedef struct curl_mime curl_mime; /* Mime context. */
24212430
typedef struct curl_mimepart curl_mimepart; /* Mime part context. */
24222431

24232432
/* CURLMIMEOPT_ defines are for the CURLOPT_MIME_OPTIONS option. */
2424-
#define CURLMIMEOPT_FORMESCAPE (1<<0) /* Use backslash-escaping for forms. */
2433+
#define CURLMIMEOPT_FORMESCAPE (1L<<0) /* Use backslash-escaping for forms. */
24252434

24262435
/*
24272436
* NAME curl_mime_init()
@@ -2750,7 +2759,7 @@ CURL_EXTERN CURLcode curl_global_init(long flags);
27502759
* for each application that uses libcurl. This function can be used to
27512760
* initialize libcurl and set user defined memory management callback
27522761
* functions. Users can implement memory management routines to check for
2753-
* memory leaks, check for mis-use of the curl library etc. User registered
2762+
* memory leaks, check for misuse of the curl library etc. User registered
27542763
* callback routines will be invoked by this library instead of the system
27552764
* memory management routines like malloc, free etc.
27562765
*/
@@ -3302,7 +3311,7 @@ CURL_EXTERN CURLcode curl_easy_ssls_export(CURL *handle,
33023311
void *userptr);
33033312

33043313

3305-
#ifdef __cplusplus
3314+
#ifdef __cplusplus
33063315
} /* end of extern "C" */
33073316
#endif
33083317

@@ -3317,8 +3326,9 @@ CURL_EXTERN CURLcode curl_easy_ssls_export(CURL *handle,
33173326
#include "mprintf.h"
33183327

33193328
/* the typechecker does not work in C++ (yet) */
3320-
#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
3321-
((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \
3329+
#if ((defined(__GNUC__) && defined(__GNUC_MINOR__) && \
3330+
((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))) || \
3331+
(defined(__clang__) && __clang_major__ >= 14)) && \
33223332
!defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK)
33233333
#include "typecheck-gcc.h"
33243334
#else

vendor/curl/c/curlver.h

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +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.15.0"
35+
#define LIBCURL_VERSION "8.17.0-DEV"
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 15
40+
#define LIBCURL_VERSION_MINOR 17
4141
#define LIBCURL_VERSION_PATCH 0
42-
4342
/* This is the numeric version of the libcurl version number, meant for easier
4443
parsing and comparisons by programs. The LIBCURL_VERSION_NUM define will
4544
always follow this syntax:
@@ -59,7 +58,7 @@
5958
CURL_VERSION_BITS() macro since curl's own configure script greps for it
6059
and needs it to contain the full number.
6160
*/
62-
#define LIBCURL_VERSION_NUM 0x080f00
61+
#define LIBCURL_VERSION_NUM 0x081100
6362

6463
/*
6564
* This is the date and time when the full source package was created. The
@@ -70,7 +69,7 @@
7069
*
7170
* "2007-11-23"
7271
*/
73-
#define LIBCURL_TIMESTAMP "2025-07-16"
72+
#define LIBCURL_TIMESTAMP "[unreleased]"
7473

7574
#define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z))
7675
#define CURL_AT_LEAST_VERSION(x,y,z) \

0 commit comments

Comments
 (0)