mirror of
https://github.com/weechat/weechat.git
synced 2026-06-30 14:56:39 +02:00
Bump required (lib)curl to v7.47.0
Bump the requirement to v7.47.0 as available in Ubuntu 16.04 (7.47.0) and Debian 10 (7.64.0). It was released around 9 years ago and any remotely supported distribution has newer version. As result we can adjust the tools/check_curl_symbols.py script to omit the ~70% of the guards and simplify the code base. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
This commit is contained in:
committed by
Sébastien Helleu
parent
fec71ae30c
commit
51dfb1fb78
+2
-1
@@ -239,7 +239,8 @@ if(ICONV_FOUND)
|
||||
endif()
|
||||
|
||||
# Check for CURL
|
||||
pkg_check_modules(LIBCURL REQUIRED libcurl)
|
||||
# NOTE: keep version in sync with tools/check_curl_symbols.py
|
||||
pkg_check_modules(LIBCURL REQUIRED libcurl>=7.47.0)
|
||||
include_directories(${LIBCURL_INCLUDE_DIRS})
|
||||
list(APPEND EXTRA_LIBS ${LIBCURL_LDFLAGS})
|
||||
|
||||
|
||||
+10
-299
@@ -54,18 +54,12 @@ char *url_type_string[] = { "string", "long", "long long", "mask", "list" };
|
||||
|
||||
struct t_url_constant url_proxy_types[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A00 /* 7.10.0 */
|
||||
URL_DEF_CONST(PROXY, HTTP),
|
||||
URL_DEF_CONST(PROXY, SOCKS4),
|
||||
URL_DEF_CONST(PROXY, SOCKS5),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071200 /* 7.18.0 */
|
||||
URL_DEF_CONST(PROXY, SOCKS4A),
|
||||
URL_DEF_CONST(PROXY, SOCKS5_HOSTNAME),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 /* 7.19.4 */
|
||||
URL_DEF_CONST(PROXY, HTTP_1_0),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073400 /* 7.52.0 */
|
||||
URL_DEF_CONST(PROXY, HTTPS),
|
||||
#endif
|
||||
@@ -74,7 +68,6 @@ struct t_url_constant url_proxy_types[] =
|
||||
|
||||
struct t_url_constant url_protocols[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 /* 7.19.4 */
|
||||
URL_DEF_CONST(PROTO, HTTP),
|
||||
URL_DEF_CONST(PROTO, HTTPS),
|
||||
URL_DEF_CONST(PROTO, FTP),
|
||||
@@ -88,8 +81,6 @@ struct t_url_constant url_protocols[] =
|
||||
URL_DEF_CONST(PROTO, FILE),
|
||||
URL_DEF_CONST(PROTO, TFTP),
|
||||
URL_DEF_CONST(PROTO, ALL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071400 /* 7.20.0 */
|
||||
URL_DEF_CONST(PROTO, IMAP),
|
||||
URL_DEF_CONST(PROTO, IMAPS),
|
||||
URL_DEF_CONST(PROTO, POP3),
|
||||
@@ -97,22 +88,15 @@ struct t_url_constant url_protocols[] =
|
||||
URL_DEF_CONST(PROTO, SMTP),
|
||||
URL_DEF_CONST(PROTO, SMTPS),
|
||||
URL_DEF_CONST(PROTO, RTSP),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071500 /* 7.21.0 */
|
||||
URL_DEF_CONST(PROTO, RTMP),
|
||||
URL_DEF_CONST(PROTO, RTMPT),
|
||||
URL_DEF_CONST(PROTO, RTMPE),
|
||||
URL_DEF_CONST(PROTO, RTMPTE),
|
||||
URL_DEF_CONST(PROTO, RTMPS),
|
||||
URL_DEF_CONST(PROTO, RTMPTS),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071502 /* 7.21.2 */
|
||||
URL_DEF_CONST(PROTO, GOPHER),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072800 /* 7.40.0 */
|
||||
URL_DEF_CONST(PROTO, SMB),
|
||||
URL_DEF_CONST(PROTO, SMBS),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074700 /* 7.71.0 */
|
||||
URL_DEF_CONST(PROTO, MQTT),
|
||||
#endif
|
||||
@@ -124,39 +108,26 @@ struct t_url_constant url_protocols[] =
|
||||
|
||||
struct t_url_constant url_netrc[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070908 /* 7.9.8 */
|
||||
URL_DEF_CONST(_NETRC, IGNORED),
|
||||
URL_DEF_CONST(_NETRC, OPTIONAL),
|
||||
URL_DEF_CONST(_NETRC, REQUIRED),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_auth[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A06 /* 7.10.6 */
|
||||
URL_DEF_CONST(AUTH, NONE),
|
||||
URL_DEF_CONST(AUTH, BASIC),
|
||||
URL_DEF_CONST(AUTH, DIGEST),
|
||||
URL_DEF_CONST(AUTH, NTLM),
|
||||
URL_DEF_CONST(AUTH, ANY),
|
||||
URL_DEF_CONST(AUTH, ANYSAFE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071303 /* 7.19.3 */
|
||||
URL_DEF_CONST(AUTH, DIGEST_IE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071503 /* 7.21.3 */
|
||||
URL_DEF_CONST(AUTH, ONLY),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071600 && LIBCURL_VERSION_NUM < 0x080800 /* 7.22.0 < 8.8.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x080800 /* < 8.8.0 */
|
||||
URL_DEF_CONST(AUTH, NTLM_WB),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A06 && LIBCURL_VERSION_NUM < 0x072600 /* 7.10.6 < 7.38.0 */
|
||||
URL_DEF_CONST(AUTH, GSSNEGOTIATE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072600 /* 7.38.0 */
|
||||
URL_DEF_CONST(AUTH, NEGOTIATE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073700 /* 7.55.0 */
|
||||
URL_DEF_CONST(AUTH, GSSAPI),
|
||||
#endif
|
||||
@@ -171,38 +142,26 @@ struct t_url_constant url_auth[] =
|
||||
|
||||
struct t_url_constant url_authtype[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071504 /* 7.21.4 */
|
||||
URL_DEF_CONST(_TLSAUTH, NONE),
|
||||
URL_DEF_CONST(_TLSAUTH, SRP),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_postredir[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071301 /* 7.19.1 */
|
||||
URL_DEF_CONST(_REDIR, POST_301),
|
||||
URL_DEF_CONST(_REDIR, POST_302),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_http_version[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070901 /* 7.9.1 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, NONE),
|
||||
URL_DEF_CONST(_HTTP_VERSION, 1_0),
|
||||
URL_DEF_CONST(_HTTP_VERSION, 1_1),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072100 /* 7.33.0 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, 2_0),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072B00 /* 7.43.0 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, 2),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072F00 /* 7.47.0 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, 2TLS),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073100 /* 7.49.0 */
|
||||
URL_DEF_CONST(_HTTP_VERSION, 2_PRIOR_KNOWLEDGE),
|
||||
#endif
|
||||
@@ -214,39 +173,30 @@ struct t_url_constant url_http_version[] =
|
||||
|
||||
struct t_url_constant url_ftp_auth[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070C02 /* 7.12.2 */
|
||||
URL_DEF_CONST(FTPAUTH, DEFAULT),
|
||||
URL_DEF_CONST(FTPAUTH, SSL),
|
||||
URL_DEF_CONST(FTPAUTH, TLS),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_ftp_ssl_ccc[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071002 /* 7.16.2 */
|
||||
URL_DEF_CONST(FTPSSL, CCC_NONE),
|
||||
URL_DEF_CONST(FTPSSL, CCC_ACTIVE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071001 /* 7.16.1 */
|
||||
URL_DEF_CONST(FTPSSL, CCC_PASSIVE),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_ftp_file_method[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F03 /* 7.15.3 */
|
||||
URL_DEF_CONST(FTPMETHOD, MULTICWD),
|
||||
URL_DEF_CONST(FTPMETHOD, NOCWD),
|
||||
URL_DEF_CONST(FTPMETHOD, SINGLECWD),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_rtsp_request[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071400 /* 7.20.0 */
|
||||
URL_DEF_CONST(_RTSPREQ, OPTIONS),
|
||||
URL_DEF_CONST(_RTSPREQ, DESCRIBE),
|
||||
URL_DEF_CONST(_RTSPREQ, ANNOUNCE),
|
||||
@@ -258,55 +208,44 @@ struct t_url_constant url_rtsp_request[] =
|
||||
URL_DEF_CONST(_RTSPREQ, SET_PARAMETER),
|
||||
URL_DEF_CONST(_RTSPREQ, RECORD),
|
||||
URL_DEF_CONST(_RTSPREQ, RECEIVE),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_time_condition[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070907 /* 7.9.7 */
|
||||
URL_DEF_CONST(_TIMECOND, NONE),
|
||||
URL_DEF_CONST(_TIMECOND, IFMODSINCE),
|
||||
URL_DEF_CONST(_TIMECOND, IFUNMODSINCE),
|
||||
URL_DEF_CONST(_TIMECOND, LASTMOD),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_ip_resolve[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A08 /* 7.10.8 */
|
||||
URL_DEF_CONST(_IPRESOLVE, WHATEVER),
|
||||
URL_DEF_CONST(_IPRESOLVE, V4),
|
||||
URL_DEF_CONST(_IPRESOLVE, V6),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_use_ssl[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071100 /* 7.17.0 */
|
||||
URL_DEF_CONST(USESSL, NONE),
|
||||
URL_DEF_CONST(USESSL, TRY),
|
||||
URL_DEF_CONST(USESSL, CONTROL),
|
||||
URL_DEF_CONST(USESSL, ALL),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_ssl_version[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x070902 /* 7.9.2 */
|
||||
URL_DEF_CONST(_SSLVERSION, DEFAULT),
|
||||
URL_DEF_CONST(_SSLVERSION, TLSv1),
|
||||
URL_DEF_CONST(_SSLVERSION, SSLv2),
|
||||
URL_DEF_CONST(_SSLVERSION, SSLv3),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072200 /* 7.34.0 */
|
||||
URL_DEF_CONST(_SSLVERSION, TLSv1_0),
|
||||
URL_DEF_CONST(_SSLVERSION, TLSv1_1),
|
||||
URL_DEF_CONST(_SSLVERSION, TLSv1_2),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073400 /* 7.52.0 */
|
||||
URL_DEF_CONST(_SSLVERSION, TLSv1_3),
|
||||
#endif
|
||||
@@ -323,12 +262,8 @@ struct t_url_constant url_ssl_version[] =
|
||||
|
||||
struct t_url_constant url_ssl_options[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071900 /* 7.25.0 */
|
||||
URL_DEF_CONST(SSLOPT, ALLOW_BEAST),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072C00 /* 7.44.0 */
|
||||
URL_DEF_CONST(SSLOPT, NO_REVOKE),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073800 /* 7.56.0 */
|
||||
URL_DEF_CONST(SSLSET, NO_BACKENDS),
|
||||
URL_DEF_CONST(SSLSET, OK),
|
||||
@@ -352,17 +287,14 @@ struct t_url_constant url_ssl_options[] =
|
||||
|
||||
struct t_url_constant url_gssapi_delegation[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071600 /* 7.22.0 */
|
||||
URL_DEF_CONST(GSSAPI_DELEGATION, NONE),
|
||||
URL_DEF_CONST(GSSAPI_DELEGATION, POLICY_FLAG),
|
||||
URL_DEF_CONST(GSSAPI_DELEGATION, FLAG),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
struct t_url_constant url_ssh_auth[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x071001 /* 7.16.1 */
|
||||
URL_DEF_CONST(SSH_AUTH, NONE),
|
||||
URL_DEF_CONST(SSH_AUTH, PUBLICKEY),
|
||||
URL_DEF_CONST(SSH_AUTH, PASSWORD),
|
||||
@@ -370,10 +302,7 @@ struct t_url_constant url_ssh_auth[] =
|
||||
URL_DEF_CONST(SSH_AUTH, KEYBOARD),
|
||||
URL_DEF_CONST(SSH_AUTH, DEFAULT),
|
||||
URL_DEF_CONST(SSH_AUTH, ANY),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071C00 /* 7.28.0 */
|
||||
URL_DEF_CONST(SSH_AUTH, AGENT),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073A00 /* 7.58.0 */
|
||||
URL_DEF_CONST(SSH_AUTH, GSSAPI),
|
||||
#endif
|
||||
@@ -382,10 +311,8 @@ struct t_url_constant url_ssh_auth[] =
|
||||
|
||||
struct t_url_constant url_header[] =
|
||||
{
|
||||
#if LIBCURL_VERSION_NUM >= 0x072500 /* 7.37.0 */
|
||||
URL_DEF_CONST(HEADER, UNIFIED),
|
||||
URL_DEF_CONST(HEADER, SEPARATE),
|
||||
#endif
|
||||
{ NULL, 0 },
|
||||
};
|
||||
|
||||
@@ -426,24 +353,16 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* behavior options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(VERBOSE, LONG, NULL),
|
||||
URL_DEF_OPTION(HEADER, LONG, NULL),
|
||||
URL_DEF_OPTION(NOPROGRESS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A00 /* 7.10.0 */
|
||||
URL_DEF_OPTION(NOSIGNAL, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071500 /* 7.21.0 */
|
||||
URL_DEF_OPTION(WILDCARDMATCH, LONG, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* error options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(FAILONERROR, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073300 /* 7.51.0 */
|
||||
URL_DEF_OPTION(KEEP_SENDING_ON_ERROR, LONG, NULL),
|
||||
#endif
|
||||
@@ -451,67 +370,41 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* network options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(PROXY, STRING, NULL),
|
||||
URL_DEF_OPTION(PROXYPORT, LONG, NULL),
|
||||
URL_DEF_OPTION(PORT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073400 /* 7.52.0 */
|
||||
URL_DEF_OPTION(PRE_PROXY, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070300 /* 7.3.0 */
|
||||
URL_DEF_OPTION(HTTPPROXYTUNNEL, LONG, NULL),
|
||||
URL_DEF_OPTION(INTERFACE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070903 /* 7.9.3 */
|
||||
URL_DEF_OPTION(DNS_CACHE_TIMEOUT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A00 /* 7.10.0 */
|
||||
URL_DEF_OPTION(PROXYTYPE, LONG, url_proxy_types),
|
||||
URL_DEF_OPTION(BUFFERSIZE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070B02 /* 7.11.2 */
|
||||
URL_DEF_OPTION(TCP_NODELAY, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F02 /* 7.15.2 */
|
||||
URL_DEF_OPTION(LOCALPORT, LONG, NULL),
|
||||
URL_DEF_OPTION(LOCALPORTRANGE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071300 /* 7.19.0 */
|
||||
URL_DEF_OPTION(ADDRESS_SCOPE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x075500 /* 7.19.4 < 7.85.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x075500 /* < 7.85.0 */
|
||||
URL_DEF_OPTION(PROTOCOLS, MASK, url_protocols),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x075500 /* 7.19.4 < 7.85.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x075500 /* < 7.85.0 */
|
||||
URL_DEF_OPTION(REDIR_PROTOCOLS, MASK, url_protocols),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 /* 7.19.4 */
|
||||
URL_DEF_OPTION(NOPROXY, STRING, NULL),
|
||||
URL_DEF_OPTION(SOCKS5_GSSAPI_NEC, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071900 /* 7.25.0 */
|
||||
URL_DEF_OPTION(TCP_KEEPALIVE, LONG, NULL),
|
||||
URL_DEF_OPTION(TCP_KEEPIDLE, LONG, NULL),
|
||||
URL_DEF_OPTION(TCP_KEEPINTVL, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072800 /* 7.40.0 */
|
||||
URL_DEF_OPTION(UNIX_SOCKET_PATH, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073500 /* 7.53.0 */
|
||||
URL_DEF_OPTION(ABSTRACT_UNIX_SOCKET, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072A00 /* 7.42.0 */
|
||||
URL_DEF_OPTION(PATH_AS_IS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072B00 /* 7.43.0 */
|
||||
URL_DEF_OPTION(PROXY_SERVICE_NAME, STRING, NULL),
|
||||
URL_DEF_OPTION(SERVICE_NAME, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072D00 /* 7.45.0 */
|
||||
URL_DEF_OPTION(DEFAULT_PROTOCOL, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 && LIBCURL_VERSION_NUM < 0x073100 /* 7.19.4 < 7.49.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x073100 /* < 7.49.0 */
|
||||
URL_DEF_OPTION(SOCKS5_GSSAPI_SERVICE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073100 /* 7.49.0 */
|
||||
@@ -536,44 +429,26 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* names and password options (authentication)
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(NETRC, LONG, url_netrc),
|
||||
URL_DEF_OPTION(USERPWD, STRING, NULL),
|
||||
URL_DEF_OPTION(PROXYUSERPWD, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A06 /* 7.10.6 */
|
||||
URL_DEF_OPTION(HTTPAUTH, MASK, url_auth),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A07 /* 7.10.7 */
|
||||
URL_DEF_OPTION(PROXYAUTH, MASK, url_auth),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070B00 /* 7.11.0 */
|
||||
URL_DEF_OPTION(NETRC_FILE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071301 /* 7.19.1 */
|
||||
URL_DEF_OPTION(USERNAME, STRING, NULL),
|
||||
URL_DEF_OPTION(PASSWORD, STRING, NULL),
|
||||
URL_DEF_OPTION(PROXYUSERNAME, STRING, NULL),
|
||||
URL_DEF_OPTION(PROXYPASSWORD, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071504 /* 7.21.4 */
|
||||
URL_DEF_OPTION(TLSAUTH_TYPE, MASK, url_authtype),
|
||||
URL_DEF_OPTION(TLSAUTH_USERNAME, STRING, NULL),
|
||||
URL_DEF_OPTION(TLSAUTH_PASSWORD, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074200 /* 7.66.0 */
|
||||
URL_DEF_OPTION(SASL_AUTHZID, STRING, NULL),
|
||||
#endif
|
||||
|
||||
#if LIBCURL_VERSION_NUM >= 0x071F00 /* 7.31.0 */
|
||||
URL_DEF_OPTION(SASL_IR, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072100 /* 7.33.0 */
|
||||
URL_DEF_OPTION(XOAUTH2_BEARER, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072200 /* 7.34.0 */
|
||||
URL_DEF_OPTION(LOGIN_OPTIONS, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073D00 /* 7.61.0 */
|
||||
URL_DEF_OPTION(DISALLOW_USERNAME_IN_URL, LONG, NULL),
|
||||
#endif
|
||||
@@ -581,7 +456,6 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* HTTP options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(AUTOREFERER, LONG, NULL),
|
||||
URL_DEF_OPTION(FOLLOWLOCATION, LONG, NULL),
|
||||
URL_DEF_OPTION(POST, LONG, NULL),
|
||||
@@ -591,70 +465,33 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(HTTPHEADER, LIST, NULL),
|
||||
URL_DEF_OPTION(COOKIE, STRING, NULL),
|
||||
URL_DEF_OPTION(COOKIEFILE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070200 /* 7.2.0 */
|
||||
URL_DEF_OPTION(POSTFIELDSIZE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070500 /* 7.5.0 */
|
||||
URL_DEF_OPTION(MAXREDIRS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070801 /* 7.8.1 */
|
||||
URL_DEF_OPTION(HTTPGET, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070900 /* 7.9.0 */
|
||||
URL_DEF_OPTION(COOKIEJAR, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070901 /* 7.9.1 */
|
||||
URL_DEF_OPTION(HTTP_VERSION, LONG, url_http_version),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070907 /* 7.9.7 */
|
||||
URL_DEF_OPTION(COOKIESESSION, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A03 /* 7.10.3 */
|
||||
URL_DEF_OPTION(HTTP200ALIASES, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A04 /* 7.10.4 */
|
||||
URL_DEF_OPTION(UNRESTRICTED_AUTH, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070B01 /* 7.11.1 */
|
||||
URL_DEF_OPTION(POSTFIELDSIZE_LARGE, LONGLONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070E01 /* 7.14.1 */
|
||||
URL_DEF_OPTION(COOKIELIST, STRING, NULL),
|
||||
URL_DEF_OPTION(IGNORE_CONTENT_LENGTH, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071506 /* 7.21.6 */
|
||||
URL_DEF_OPTION(ACCEPT_ENCODING, STRING, NULL),
|
||||
URL_DEF_OPTION(TRANSFER_ENCODING, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071002 /* 7.16.2 */
|
||||
URL_DEF_OPTION(HTTP_CONTENT_DECODING, LONG, NULL),
|
||||
URL_DEF_OPTION(HTTP_TRANSFER_DECODING, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071101 /* 7.17.1 */
|
||||
URL_DEF_OPTION(COPYPOSTFIELDS, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071301 /* 7.19.1 */
|
||||
URL_DEF_OPTION(POSTREDIR, MASK, url_postredir),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072400 /* 7.36.0 */
|
||||
URL_DEF_OPTION(EXPECT_100_TIMEOUT_MS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072500 /* 7.37.0 */
|
||||
URL_DEF_OPTION(HEADEROPT, MASK, url_header),
|
||||
URL_DEF_OPTION(PROXYHEADER, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072B00 /* 7.43.0 */
|
||||
URL_DEF_OPTION(PIPEWAIT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072E00 /* 7.46.0 */
|
||||
URL_DEF_OPTION(STREAM_WEIGHT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073700 /* 7.55.0 */
|
||||
URL_DEF_OPTION(REQUEST_TARGET, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 && LIBCURL_VERSION_NUM < 0x073800 /* 7.1.0 < 7.56.0 */
|
||||
URL_DEF_OPTION(HTTPPOST, LIST, NULL),
|
||||
#if LIBCURL_VERSION_NUM < 0x073800 /* < 7.56.0 */
|
||||
URL_DEF_OPTION(HTTPPOST, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074000 /* 7.64.0 */
|
||||
URL_DEF_OPTION(HTTP09_ALLOWED, LONG, NULL),
|
||||
@@ -667,13 +504,9 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* SMTP options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071400 /* 7.20.0 */
|
||||
URL_DEF_OPTION(MAIL_FROM, STRING, NULL),
|
||||
URL_DEF_OPTION(MAIL_RCPT, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071900 /* 7.25.0 */
|
||||
URL_DEF_OPTION(MAIL_AUTH, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074500 && LIBCURL_VERSION_NUM < 0x080200 /* 7.69.0 < 8.2.0 */
|
||||
URL_DEF_OPTION(MAIL_RCPT_ALLLOWFAILS, LONG, NULL),
|
||||
#endif
|
||||
@@ -684,9 +517,7 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* TFTP options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071304 /* 7.19.4 */
|
||||
URL_DEF_OPTION(TFTP_BLKSIZE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073000 /* 7.48.0 */
|
||||
URL_DEF_OPTION(TFTP_NO_OPTIONS, LONG, NULL),
|
||||
#endif
|
||||
@@ -694,63 +525,35 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* FTP options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(FTPPORT, STRING, NULL),
|
||||
URL_DEF_OPTION(QUOTE, LIST, NULL),
|
||||
URL_DEF_OPTION(POSTQUOTE, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070902 /* 7.9.2 */
|
||||
URL_DEF_OPTION(FTP_USE_EPSV, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070905 /* 7.9.5 */
|
||||
URL_DEF_OPTION(PREQUOTE, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A05 /* 7.10.5 */
|
||||
URL_DEF_OPTION(FTP_USE_EPRT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A07 /* 7.10.7 */
|
||||
URL_DEF_OPTION(FTP_CREATE_MISSING_DIRS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A08 && LIBCURL_VERSION_NUM < 0x075500 /* 7.10.8 < 7.85.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x075500 /* < 7.85.0 */
|
||||
URL_DEF_OPTION(FTP_RESPONSE_TIMEOUT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070C02 /* 7.12.2 */
|
||||
URL_DEF_OPTION(FTPSSLAUTH, LONG, url_ftp_auth),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070D00 /* 7.13.0 */
|
||||
URL_DEF_OPTION(FTP_ACCOUNT, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F00 /* 7.15.0 */
|
||||
URL_DEF_OPTION(FTP_SKIP_PASV_IP, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F01 /* 7.15.1 */
|
||||
URL_DEF_OPTION(FTP_FILEMETHOD, LONG, url_ftp_file_method),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F05 /* 7.15.5 */
|
||||
URL_DEF_OPTION(FTP_ALTERNATIVE_TO_USER, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071001 /* 7.16.1 */
|
||||
URL_DEF_OPTION(FTP_SSL_CCC, LONG, url_ftp_ssl_ccc),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071100 /* 7.17.0 */
|
||||
URL_DEF_OPTION(DIRLISTONLY, LONG, NULL),
|
||||
URL_DEF_OPTION(APPEND, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071400 /* 7.20.0 */
|
||||
URL_DEF_OPTION(FTP_USE_PRET, LONG, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* RTSP options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071400 /* 7.20.0 */
|
||||
URL_DEF_OPTION(RTSP_REQUEST, LONG, url_rtsp_request),
|
||||
URL_DEF_OPTION(RTSP_SESSION_ID, STRING, NULL),
|
||||
URL_DEF_OPTION(RTSP_STREAM_URI, STRING, NULL),
|
||||
URL_DEF_OPTION(RTSP_TRANSPORT, STRING, NULL),
|
||||
URL_DEF_OPTION(RTSP_CLIENT_CSEQ, LONG, NULL),
|
||||
URL_DEF_OPTION(RTSP_SERVER_CSEQ, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074B00 /* 7.75.0 */
|
||||
URL_DEF_OPTION(AWS_SIGV4, STRING, NULL),
|
||||
#endif
|
||||
@@ -758,7 +561,6 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* protocol options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(CRLF, LONG, NULL),
|
||||
URL_DEF_OPTION(RANGE, STRING, NULL),
|
||||
URL_DEF_OPTION(RESUME_FROM, LONG, NULL),
|
||||
@@ -768,24 +570,13 @@ struct t_url_option url_options[] =
|
||||
URL_DEF_OPTION(UPLOAD, LONG, NULL),
|
||||
URL_DEF_OPTION(TIMECONDITION, LONG, url_time_condition),
|
||||
URL_DEF_OPTION(TIMEVALUE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070101 /* 7.1.1 */
|
||||
URL_DEF_OPTION(TRANSFERTEXT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070500 /* 7.5.0 */
|
||||
URL_DEF_OPTION(FILETIME, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A08 /* 7.10.8 */
|
||||
URL_DEF_OPTION(MAXFILESIZE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071200 /* 7.18.0 */
|
||||
URL_DEF_OPTION(PROXY_TRANSFER_MODE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070B00 /* 7.11.0 */
|
||||
URL_DEF_OPTION(RESUME_FROM_LARGE, LONGLONG, NULL),
|
||||
URL_DEF_OPTION(INFILESIZE_LARGE, LONGLONG, NULL),
|
||||
URL_DEF_OPTION(MAXFILESIZE_LARGE, LONGLONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073B00 /* 7.59.0 */
|
||||
URL_DEF_OPTION(TIMEVALUE_LARGE, LONGLONG, NULL),
|
||||
#endif
|
||||
@@ -799,51 +590,29 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* connection options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(TIMEOUT, LONG, NULL),
|
||||
URL_DEF_OPTION(LOW_SPEED_LIMIT, LONG, NULL),
|
||||
URL_DEF_OPTION(LOW_SPEED_TIME, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 /* 7.7.0 */
|
||||
URL_DEF_OPTION(FRESH_CONNECT, LONG, NULL),
|
||||
URL_DEF_OPTION(FORBID_REUSE, LONG, NULL),
|
||||
URL_DEF_OPTION(CONNECTTIMEOUT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070A08 /* 7.10.8 */
|
||||
URL_DEF_OPTION(IPRESOLVE, LONG, url_ip_resolve),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F02 /* 7.15.2 */
|
||||
URL_DEF_OPTION(CONNECT_ONLY, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070F05 /* 7.15.5 */
|
||||
URL_DEF_OPTION(MAX_SEND_SPEED_LARGE, LONGLONG, NULL),
|
||||
URL_DEF_OPTION(MAX_RECV_SPEED_LARGE, LONGLONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071002 /* 7.16.2 */
|
||||
URL_DEF_OPTION(TIMEOUT_MS, LONG, NULL),
|
||||
URL_DEF_OPTION(CONNECTTIMEOUT_MS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x074100 /* 7.65.0 */
|
||||
URL_DEF_OPTION(MAXAGE_CONN, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 /* 7.7.0 */
|
||||
URL_DEF_OPTION(MAXCONNECTS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071100 /* 7.17.0 */
|
||||
URL_DEF_OPTION(USE_SSL, LONG, url_use_ssl),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071503 /* 7.21.3 */
|
||||
URL_DEF_OPTION(RESOLVE, LIST, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071800 /* 7.24.0 */
|
||||
URL_DEF_OPTION(DNS_SERVERS, STRING, NULL),
|
||||
URL_DEF_OPTION(ACCEPTTIMEOUT_MS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072100 /* 7.33.0 */
|
||||
URL_DEF_OPTION(DNS_INTERFACE, STRING, NULL),
|
||||
URL_DEF_OPTION(DNS_LOCAL_IP4, STRING, NULL),
|
||||
URL_DEF_OPTION(DNS_LOCAL_IP6, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073100 /* 7.49.0 */
|
||||
URL_DEF_OPTION(CONNECT_TO, LIST, NULL),
|
||||
#endif
|
||||
@@ -863,73 +632,39 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* SSL and security options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070100 /* 7.1.0 */
|
||||
URL_DEF_OPTION(SSLCERT, STRING, NULL),
|
||||
URL_DEF_OPTION(SSLVERSION, LONG, url_ssl_version),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070402 /* 7.4.2 */
|
||||
URL_DEF_OPTION(SSL_VERIFYPEER, LONG, NULL),
|
||||
URL_DEF_OPTION(CAINFO, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 && LIBCURL_VERSION_NUM < 0x075400 /* 7.7.0 < 7.84.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x075400 /* < 7.84.0 */
|
||||
URL_DEF_OPTION(RANDOM_FILE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 && LIBCURL_VERSION_NUM < 0x075400 /* 7.7.0 < 7.84.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x075400 /* < 7.84.0 */
|
||||
URL_DEF_OPTION(EGDSOCKET, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070801 /* 7.8.1 */
|
||||
URL_DEF_OPTION(SSL_VERIFYHOST, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070900 /* 7.9.0 */
|
||||
URL_DEF_OPTION(SSL_CIPHER_LIST, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070903 /* 7.9.3 */
|
||||
URL_DEF_OPTION(SSLCERTTYPE, STRING, NULL),
|
||||
URL_DEF_OPTION(SSLKEY, STRING, NULL),
|
||||
URL_DEF_OPTION(SSLKEYTYPE, STRING, NULL),
|
||||
URL_DEF_OPTION(SSLENGINE, STRING, NULL),
|
||||
URL_DEF_OPTION(SSLENGINE_DEFAULT, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x070908 /* 7.9.8 */
|
||||
URL_DEF_OPTION(CAPATH, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071000 /* 7.16.0 */
|
||||
URL_DEF_OPTION(SSL_SESSIONID_CACHE, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071004 /* 7.16.4 */
|
||||
URL_DEF_OPTION(KRBLEVEL, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071100 /* 7.17.0 */
|
||||
URL_DEF_OPTION(KEYPASSWD, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071300 /* 7.19.0 */
|
||||
URL_DEF_OPTION(ISSUERCERT, STRING, NULL),
|
||||
URL_DEF_OPTION(CRLFILE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071301 /* 7.19.1 */
|
||||
URL_DEF_OPTION(CERTINFO, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071600 /* 7.22.0 */
|
||||
URL_DEF_OPTION(GSSAPI_DELEGATION, LONG, url_gssapi_delegation),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071900 /* 7.25.0 */
|
||||
URL_DEF_OPTION(SSL_OPTIONS, LONG, url_ssl_options),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072400 /* 7.36.0 */
|
||||
URL_DEF_OPTION(SSL_ENABLE_ALPN, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072400 && LIBCURL_VERSION_NUM < 0x075600 /* 7.36.0 < 7.86.0 */
|
||||
#if LIBCURL_VERSION_NUM < 0x075600 /* < 7.86.0 */
|
||||
URL_DEF_OPTION(SSL_ENABLE_NPN, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072700 /* 7.39.0 */
|
||||
URL_DEF_OPTION(PINNEDPUBLICKEY, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072900 /* 7.41.0 */
|
||||
URL_DEF_OPTION(SSL_VERIFYSTATUS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x072A00 /* 7.42.0 */
|
||||
URL_DEF_OPTION(SSL_FALSESTART, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073400 /* 7.52.0 */
|
||||
URL_DEF_OPTION(PROXY_CAINFO, STRING, NULL),
|
||||
URL_DEF_OPTION(PROXY_CAPATH, STRING, NULL),
|
||||
@@ -971,17 +706,11 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* SSH options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071001 /* 7.16.1 */
|
||||
URL_DEF_OPTION(SSH_AUTH_TYPES, MASK, url_gssapi_delegation),
|
||||
URL_DEF_OPTION(SSH_PUBLIC_KEYFILE, STRING, NULL),
|
||||
URL_DEF_OPTION(SSH_PRIVATE_KEYFILE, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071101 /* 7.17.1 */
|
||||
URL_DEF_OPTION(SSH_HOST_PUBLIC_KEY_MD5, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x071306 /* 7.19.6 */
|
||||
URL_DEF_OPTION(SSH_KNOWNHOSTS, STRING, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x073800 /* 7.56.0 */
|
||||
URL_DEF_OPTION(SSH_COMPRESSION, LONG, NULL),
|
||||
#endif
|
||||
@@ -992,9 +721,7 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* telnet options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x070700 /* 7.7 */
|
||||
URL_DEF_OPTION(TELNETOPTIONS, LIST, NULL),
|
||||
#endif
|
||||
|
||||
/*
|
||||
* websocket options
|
||||
@@ -1006,10 +733,8 @@ struct t_url_option url_options[] =
|
||||
/*
|
||||
* other options
|
||||
*/
|
||||
#if LIBCURL_VERSION_NUM >= 0x071004 /* 7.16.4 */
|
||||
URL_DEF_OPTION(NEW_FILE_PERMS, LONG, NULL),
|
||||
URL_DEF_OPTION(NEW_DIRECTORY_PERMS, LONG, NULL),
|
||||
#endif
|
||||
#if LIBCURL_VERSION_NUM >= 0x075700 /* 7.87.0 */
|
||||
URL_DEF_OPTION(QUICK_EXIT, LONG, NULL),
|
||||
#endif
|
||||
@@ -1272,23 +997,11 @@ weeurl_set_proxy (CURL *curl, struct t_proxy *proxy)
|
||||
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
|
||||
break;
|
||||
case PROXY_TYPE_SOCKS4:
|
||||
#if LIBCURL_VERSION_NUM < 0x070A00 /* 7.10.0 */
|
||||
/* proxy socks4 not supported in Curl < 7.10 */
|
||||
return;
|
||||
#endif /* LIBCURL_VERSION_NUM < 0x070A00 */
|
||||
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4);
|
||||
break;
|
||||
case PROXY_TYPE_SOCKS5:
|
||||
#if LIBCURL_VERSION_NUM < 0x070A00 /* 7.10.0 */
|
||||
/* proxy socks5 not supported in Curl < 7.10 */
|
||||
return;
|
||||
#endif /* LIBCURL_VERSION_NUM < 0x070A00 */
|
||||
#if LIBCURL_VERSION_NUM >= 0x071200 /* 7.18.0 */
|
||||
curl_easy_setopt (curl, CURLOPT_PROXYTYPE,
|
||||
CURLPROXY_SOCKS5_HOSTNAME);
|
||||
#else
|
||||
curl_easy_setopt (curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
|
||||
#endif /* LIBCURL_VERSION_NUM >= 0x071200 */
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1301,7 +1014,6 @@ weeurl_set_proxy (CURL *curl, struct t_proxy *proxy)
|
||||
CONFIG_INTEGER(proxy->options[PROXY_OPTION_PORT]));
|
||||
|
||||
/* set username/password */
|
||||
#if LIBCURL_VERSION_NUM >= 0x071301 /* 7.19.1 */
|
||||
if (CONFIG_STRING(proxy->options[PROXY_OPTION_USERNAME])
|
||||
&& CONFIG_STRING(proxy->options[PROXY_OPTION_USERNAME])[0])
|
||||
{
|
||||
@@ -1314,7 +1026,6 @@ weeurl_set_proxy (CURL *curl, struct t_proxy *proxy)
|
||||
curl_easy_setopt (curl, CURLOPT_PROXYPASSWORD,
|
||||
CONFIG_STRING(proxy->options[PROXY_OPTION_PASSWORD]));
|
||||
}
|
||||
#endif /* LIBCURL_VERSION_NUM >= 0x071301 */
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -50,6 +50,9 @@ SRC_PATH = (
|
||||
Path(__file__).resolve().parent.parent / "src" / "core" / "core-url.c"
|
||||
)
|
||||
|
||||
# NOTE: keep version in sync with CMakeLists.txt
|
||||
CURL_MIN_VERSION_STR = "7.47.0"
|
||||
|
||||
WEECHAT_CURL_MIN_VERSION_RE = (
|
||||
r"#if LIBCURL_VERSION_NUM >= (?P<hex_min_version>0x[0-9A-F]+) "
|
||||
r"/\* (?P<str_min_version>[0-9][0-9.]+) \*/"
|
||||
@@ -145,6 +148,33 @@ def get_curl_symbols(symbols_file: TextIO) -> Dict[str, Tuple[int, int]]:
|
||||
return symbols
|
||||
|
||||
|
||||
def check_req_symbols(symbols: List[WeechatCurlSymbol]) -> int:
|
||||
"""
|
||||
Checks the symbols' min/max version, relative to minimum Curl version that
|
||||
we require.
|
||||
|
||||
:return: errors
|
||||
"""
|
||||
errors: int = 0
|
||||
req_curl = curl_version_to_int(CURL_MIN_VERSION_STR)
|
||||
for symbol in symbols:
|
||||
if symbol.min_curl and symbol.min_curl <= req_curl:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: min version for "
|
||||
f"symbol {symbol.name} older than minimal required "
|
||||
f"curl {req_curl}. Remove if guard."
|
||||
)
|
||||
errors += 1
|
||||
if symbol.max_curl and symbol.max_curl < req_curl:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: max version for "
|
||||
f"symbol {symbol.name} older than minimal required "
|
||||
f"curl {req_curl}. Remove the symbol."
|
||||
)
|
||||
errors += 1
|
||||
return errors
|
||||
|
||||
|
||||
def get_weechat_curl_symbols() -> Tuple[List[WeechatCurlSymbol], int]:
|
||||
"""
|
||||
Parse Curl symbols declared in src/core/core-url.c.
|
||||
@@ -238,6 +268,8 @@ def get_weechat_curl_symbols() -> Tuple[List[WeechatCurlSymbol], int]:
|
||||
name = f"CURLOPT_{match['name']}"
|
||||
symbols.append(WeechatCurlSymbol(name, v_min, v_max, line_no))
|
||||
continue
|
||||
|
||||
errors += check_req_symbols(symbols)
|
||||
return symbols, errors
|
||||
|
||||
|
||||
@@ -251,6 +283,7 @@ def check_symbols(
|
||||
:param weechat_curl_symbols: list of Curl symbols in WeeChat
|
||||
:param curl_symbols: list of all Curl symbols
|
||||
"""
|
||||
req_curl = curl_version_to_int(CURL_MIN_VERSION_STR)
|
||||
to_str = curl_version_to_str
|
||||
errors = 0
|
||||
for symbol in weechat_curl_symbols:
|
||||
@@ -262,7 +295,7 @@ def check_symbols(
|
||||
)
|
||||
errors += 1
|
||||
continue
|
||||
if symbol.min_curl != curl_symbol[0]:
|
||||
if curl_symbol[0] > req_curl and symbol.min_curl != curl_symbol[0]:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: min version for "
|
||||
f"symbol {symbol.name} differs: "
|
||||
@@ -270,7 +303,7 @@ def check_symbols(
|
||||
f"{to_str(curl_symbol[0])} in Curl"
|
||||
)
|
||||
errors += 1
|
||||
if symbol.max_curl != curl_symbol[1]:
|
||||
if curl_symbol[1] >= req_curl and symbol.max_curl != curl_symbol[1]:
|
||||
print(
|
||||
f"{SRC_PATH}:{symbol.line_no}: max version for "
|
||||
f"symbol {symbol.name} differs: "
|
||||
|
||||
Reference in New Issue
Block a user