summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/de/autogen/plugin_api/url_options.asciidoc20
-rw-r--r--doc/en/autogen/plugin_api/url_options.asciidoc20
-rw-r--r--doc/fr/autogen/plugin_api/url_options.asciidoc20
-rw-r--r--doc/it/autogen/plugin_api/url_options.asciidoc20
-rw-r--r--doc/ja/autogen/plugin_api/url_options.asciidoc20
-rw-r--r--doc/pl/autogen/plugin_api/url_options.asciidoc20
-rw-r--r--src/core/wee-url.c123
7 files changed, 205 insertions, 38 deletions
diff --git a/doc/de/autogen/plugin_api/url_options.asciidoc b/doc/de/autogen/plugin_api/url_options.asciidoc
index 3693cfae9..7ef024f98 100644
--- a/doc/de/autogen/plugin_api/url_options.asciidoc
+++ b/doc/de/autogen/plugin_api/url_options.asciidoc
@@ -70,6 +70,8 @@
| proxypassword | string |
+| login_options | string |
+
| httpauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
| tlsauth_type | mask | none, srp
@@ -80,6 +82,10 @@
| proxyauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
+| sasl_ir | long |
+
+| xoauth2_bearer | string |
+
| autoreferer | long |
| accept_encoding | string |
@@ -110,6 +116,8 @@
| useragent | string |
+| headeropt | mask | unified, separate
+
| cookie | string |
| cookiefile | string |
@@ -130,6 +138,8 @@
| http_transfer_decoding | long |
+| expect_100_timeout_ms | long |
+
| mail_from | string |
| mail_auth | string |
@@ -236,6 +246,12 @@
| use_ssl | long | none, try, control, all
+| dns_interface | string |
+
+| dns_local_ip4 | string |
+
+| dns_local_ip6 | string |
+
| dns_servers | string |
| accepttimeout_ms | long |
@@ -250,6 +266,10 @@
| keypasswd | string |
+| ssl_enable_alpn | long |
+
+| ssl_enable_npn | long |
+
| sslengine | string |
| sslengine_default | long |
diff --git a/doc/en/autogen/plugin_api/url_options.asciidoc b/doc/en/autogen/plugin_api/url_options.asciidoc
index 11dcfa6e7..3399dcc16 100644
--- a/doc/en/autogen/plugin_api/url_options.asciidoc
+++ b/doc/en/autogen/plugin_api/url_options.asciidoc
@@ -70,6 +70,8 @@
| proxypassword | string |
+| login_options | string |
+
| httpauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
| tlsauth_type | mask | none, srp
@@ -80,6 +82,10 @@
| proxyauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
+| sasl_ir | long |
+
+| xoauth2_bearer | string |
+
| autoreferer | long |
| accept_encoding | string |
@@ -110,6 +116,8 @@
| useragent | string |
+| headeropt | mask | unified, separate
+
| cookie | string |
| cookiefile | string |
@@ -130,6 +138,8 @@
| http_transfer_decoding | long |
+| expect_100_timeout_ms | long |
+
| mail_from | string |
| mail_auth | string |
@@ -236,6 +246,12 @@
| use_ssl | long | none, try, control, all
+| dns_interface | string |
+
+| dns_local_ip4 | string |
+
+| dns_local_ip6 | string |
+
| dns_servers | string |
| accepttimeout_ms | long |
@@ -250,6 +266,10 @@
| keypasswd | string |
+| ssl_enable_alpn | long |
+
+| ssl_enable_npn | long |
+
| sslengine | string |
| sslengine_default | long |
diff --git a/doc/fr/autogen/plugin_api/url_options.asciidoc b/doc/fr/autogen/plugin_api/url_options.asciidoc
index 4e38d55f0..6ff6c3a6c 100644
--- a/doc/fr/autogen/plugin_api/url_options.asciidoc
+++ b/doc/fr/autogen/plugin_api/url_options.asciidoc
@@ -70,6 +70,8 @@
| proxypassword | string |
+| login_options | string |
+
| httpauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
| tlsauth_type | mask | none, srp
@@ -80,6 +82,10 @@
| proxyauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
+| sasl_ir | long |
+
+| xoauth2_bearer | string |
+
| autoreferer | long |
| accept_encoding | string |
@@ -110,6 +116,8 @@
| useragent | string |
+| headeropt | mask | unified, separate
+
| cookie | string |
| cookiefile | string |
@@ -130,6 +138,8 @@
| http_transfer_decoding | long |
+| expect_100_timeout_ms | long |
+
| mail_from | string |
| mail_auth | string |
@@ -236,6 +246,12 @@
| use_ssl | long | none, try, control, all
+| dns_interface | string |
+
+| dns_local_ip4 | string |
+
+| dns_local_ip6 | string |
+
| dns_servers | string |
| accepttimeout_ms | long |
@@ -250,6 +266,10 @@
| keypasswd | string |
+| ssl_enable_alpn | long |
+
+| ssl_enable_npn | long |
+
| sslengine | string |
| sslengine_default | long |
diff --git a/doc/it/autogen/plugin_api/url_options.asciidoc b/doc/it/autogen/plugin_api/url_options.asciidoc
index eda1cce2d..eb6e96629 100644
--- a/doc/it/autogen/plugin_api/url_options.asciidoc
+++ b/doc/it/autogen/plugin_api/url_options.asciidoc
@@ -70,6 +70,8 @@
| proxypassword | string |
+| login_options | string |
+
| httpauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
| tlsauth_type | mask | none, srp
@@ -80,6 +82,10 @@
| proxyauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
+| sasl_ir | long |
+
+| xoauth2_bearer | string |
+
| autoreferer | long |
| accept_encoding | string |
@@ -110,6 +116,8 @@
| useragent | string |
+| headeropt | mask | unified, separate
+
| cookie | string |
| cookiefile | string |
@@ -130,6 +138,8 @@
| http_transfer_decoding | long |
+| expect_100_timeout_ms | long |
+
| mail_from | string |
| mail_auth | string |
@@ -236,6 +246,12 @@
| use_ssl | long | none, try, control, all
+| dns_interface | string |
+
+| dns_local_ip4 | string |
+
+| dns_local_ip6 | string |
+
| dns_servers | string |
| accepttimeout_ms | long |
@@ -250,6 +266,10 @@
| keypasswd | string |
+| ssl_enable_alpn | long |
+
+| ssl_enable_npn | long |
+
| sslengine | string |
| sslengine_default | long |
diff --git a/doc/ja/autogen/plugin_api/url_options.asciidoc b/doc/ja/autogen/plugin_api/url_options.asciidoc
index e216f5961..519c2a528 100644
--- a/doc/ja/autogen/plugin_api/url_options.asciidoc
+++ b/doc/ja/autogen/plugin_api/url_options.asciidoc
@@ -70,6 +70,8 @@
| proxypassword | string |
+| login_options | string |
+
| httpauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
| tlsauth_type | mask | none, srp
@@ -80,6 +82,10 @@
| proxyauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
+| sasl_ir | long |
+
+| xoauth2_bearer | string |
+
| autoreferer | long |
| accept_encoding | string |
@@ -110,6 +116,8 @@
| useragent | string |
+| headeropt | mask | unified, separate
+
| cookie | string |
| cookiefile | string |
@@ -130,6 +138,8 @@
| http_transfer_decoding | long |
+| expect_100_timeout_ms | long |
+
| mail_from | string |
| mail_auth | string |
@@ -236,6 +246,12 @@
| use_ssl | long | none, try, control, all
+| dns_interface | string |
+
+| dns_local_ip4 | string |
+
+| dns_local_ip6 | string |
+
| dns_servers | string |
| accepttimeout_ms | long |
@@ -250,6 +266,10 @@
| keypasswd | string |
+| ssl_enable_alpn | long |
+
+| ssl_enable_npn | long |
+
| sslengine | string |
| sslengine_default | long |
diff --git a/doc/pl/autogen/plugin_api/url_options.asciidoc b/doc/pl/autogen/plugin_api/url_options.asciidoc
index bc1ba57c6..4c39d5eb9 100644
--- a/doc/pl/autogen/plugin_api/url_options.asciidoc
+++ b/doc/pl/autogen/plugin_api/url_options.asciidoc
@@ -70,6 +70,8 @@
| proxypassword | string |
+| login_options | string |
+
| httpauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
| tlsauth_type | mask | none, srp
@@ -80,6 +82,10 @@
| proxyauth | mask | none, basic, digest, gssnegotiate, ntlm, digest_ie, ntlm_wb, only, any, anysafe
+| sasl_ir | long |
+
+| xoauth2_bearer | string |
+
| autoreferer | long |
| accept_encoding | string |
@@ -110,6 +116,8 @@
| useragent | string |
+| headeropt | mask | unified, separate
+
| cookie | string |
| cookiefile | string |
@@ -130,6 +138,8 @@
| http_transfer_decoding | long |
+| expect_100_timeout_ms | long |
+
| mail_from | string |
| mail_auth | string |
@@ -236,6 +246,12 @@
| use_ssl | long | none, try, control, all
+| dns_interface | string |
+
+| dns_local_ip4 | string |
+
+| dns_local_ip6 | string |
+
| dns_servers | string |
| accepttimeout_ms | long |
@@ -250,6 +266,10 @@
| keypasswd | string |
+| ssl_enable_alpn | long |
+
+| ssl_enable_npn | long |
+
| sslengine | string |
| sslengine_default | long |
diff --git a/src/core/wee-url.c b/src/core/wee-url.c
index 79eb5b26f..5ca9432d8 100644
--- a/src/core/wee-url.c
+++ b/src/core/wee-url.c
@@ -45,10 +45,15 @@
char *url_type_string[] = { "string", "long", "long long", "mask" };
+/*
+ * Constants/options for Curl 7.37.0
+ * (this list of options must be updated on every new Curl release)
+ */
+
struct t_url_constant url_proxy_types[] =
{
#if LIBCURL_VERSION_NUM >= 0x070A00
- /* libcurl >= 7.10 */
+ /* libcurl >= 7.10.0 */
URL_DEF_CONST(PROXY, HTTP),
#endif
#if LIBCURL_VERSION_NUM >= 0x071304
@@ -56,7 +61,7 @@ struct t_url_constant url_proxy_types[] =
URL_DEF_CONST(PROXY, HTTP_1_0),
#endif
#if LIBCURL_VERSION_NUM >= 0x070A00
- /* libcurl >= 7.10 */
+ /* libcurl >= 7.10.0 */
URL_DEF_CONST(PROXY, SOCKS4),
URL_DEF_CONST(PROXY, SOCKS5),
#endif
@@ -331,23 +336,33 @@ struct t_url_constant url_ssh_auth[] =
{ NULL, 0 },
};
+struct t_url_constant url_header[] =
+{
+#if LIBCURL_VERSION_NUM >= 0x072500
+ /* libcurl >= 7.37.0 */
+ URL_DEF_CONST(HEADER, UNIFIED),
+ URL_DEF_CONST(HEADER, SEPARATE),
+#endif
+ { NULL, 0 },
+};
+
struct t_url_option url_options[] =
{
/*
* behavior options
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 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
- /* libcurl >= 7.10 */
+ /* libcurl >= 7.10.0 */
URL_DEF_OPTION(NOSIGNAL, LONG, NULL),
#endif
-#if LIBCURL_VERSION_NUM >= 0x071501
- /* libcurl >= 7.21 */
+#if LIBCURL_VERSION_NUM >= 0x071500
+ /* libcurl >= 7.21.0 */
URL_DEF_OPTION(WILDCARDMATCH, LONG, NULL),
#endif
@@ -355,7 +370,7 @@ struct t_url_option url_options[] =
* error options
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(FAILONERROR, LONG, NULL),
#endif
@@ -368,12 +383,12 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(REDIR_PROTOCOLS, MASK, url_protocols),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(PROXY, STRING, NULL),
URL_DEF_OPTION(PROXYPORT, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070A00
- /* libcurl >= 7.10 */
+ /* libcurl >= 7.10.0 */
URL_DEF_OPTION(PROXYTYPE, LONG, url_proxy_types),
#endif
#if LIBCURL_VERSION_NUM >= 0x071304
@@ -381,7 +396,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(NOPROXY, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070300
- /* libcurl >= 7.3 */
+ /* libcurl >= 7.3.0 */
URL_DEF_OPTION(HTTPPROXYTUNNEL, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x071304
@@ -390,7 +405,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(SOCKS5_GSSAPI_NEC, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070300
- /* libcurl >= 7.3 */
+ /* libcurl >= 7.3.0 */
URL_DEF_OPTION(INTERFACE, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070F02
@@ -403,11 +418,11 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(DNS_CACHE_TIMEOUT, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070A00
- /* libcurl >= 7.10 */
+ /* libcurl >= 7.10.0 */
URL_DEF_OPTION(BUFFERSIZE, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(PORT, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070B02
@@ -429,7 +444,7 @@ struct t_url_option url_options[] =
* name and password options (authentication)
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(NETRC, LONG, url_netrc),
#endif
#if LIBCURL_VERSION_NUM >= 0x070B00
@@ -437,7 +452,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(NETRC_FILE, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(USERPWD, STRING, NULL),
URL_DEF_OPTION(PROXYUSERPWD, STRING, NULL),
#endif
@@ -448,6 +463,10 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(PROXYUSERNAME, STRING, NULL),
URL_DEF_OPTION(PROXYPASSWORD, STRING, NULL),
#endif
+#if LIBCURL_VERSION_NUM >= 0x072200
+ /* libcurl >= 7.34.0 */
+ URL_DEF_OPTION(LOGIN_OPTIONS, STRING, NULL),
+#endif
#if LIBCURL_VERSION_NUM >= 0x070A06
/* libcurl >= 7.10.6 */
URL_DEF_OPTION(HTTPAUTH, MASK, url_auth),
@@ -462,12 +481,20 @@ struct t_url_option url_options[] =
/* libcurl >= 7.10.7 */
URL_DEF_OPTION(PROXYAUTH, MASK, url_auth),
#endif
+#if LIBCURL_VERSION_NUM >= 0x071F00
+ /* libcurl >= 7.31.0 */
+ URL_DEF_OPTION(SASL_IR, LONG, NULL),
+#endif
+#if LIBCURL_VERSION_NUM >= 0x072100
+ /* libcurl >= 7.33.0 */
+ URL_DEF_OPTION(XOAUTH2_BEARER, STRING, NULL),
+#endif
/*
* HTTP options
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(AUTOREFERER, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x071506
@@ -476,7 +503,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(TRANSFER_ENCODING, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(FOLLOWLOCATION, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070A04
@@ -484,7 +511,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(UNRESTRICTED_AUTH, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070500
- /* libcurl >= 7.5 */
+ /* libcurl >= 7.5.0 */
URL_DEF_OPTION(MAXREDIRS, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x071301
@@ -492,13 +519,13 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(POSTREDIR, MASK, url_postredir),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(PUT, LONG, NULL),
URL_DEF_OPTION(POST, LONG, NULL),
URL_DEF_OPTION(POSTFIELDS, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070200
- /* libcurl >= 7.2 */
+ /* libcurl >= 7.2.0 */
URL_DEF_OPTION(POSTFIELDSIZE, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070B01
@@ -510,26 +537,31 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(COPYPOSTFIELDS, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
/*URL_DEF_OPTION(HTTPPOST, LIST, NULL),*/
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(REFERER, STRING, NULL),
URL_DEF_OPTION(USERAGENT, STRING, NULL),
/*URL_DEF_OPTION(HTTPHEADER, LIST, NULL),*/
#endif
+#if LIBCURL_VERSION_NUM >= 0x072500
+ /* libcurl >= 7.37.0 */
+ URL_DEF_OPTION(HEADEROPT, MASK, url_header),
+ /*URL_DEF_OPTION(PROXYHEADER, LIST, NULL),*/
+#endif
#if LIBCURL_VERSION_NUM >= 0x070A03
/* libcurl >= 7.10.3 */
/*URL_DEF_OPTION(HTTP200ALIASES, LIST, NULL),*/
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(COOKIE, STRING, NULL),
URL_DEF_OPTION(COOKIEFILE, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070900
- /* libcurl >= 7.9 */
+ /* libcurl >= 7.9.0 */
URL_DEF_OPTION(COOKIEJAR, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070907
@@ -557,6 +589,10 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(HTTP_CONTENT_DECODING, LONG, NULL),
URL_DEF_OPTION(HTTP_TRANSFER_DECODING, LONG, NULL),
#endif
+#if LIBCURL_VERSION_NUM >= 0x072400
+ /* libcurl >= 7.36.0 */
+ URL_DEF_OPTION(EXPECT_100_TIMEOUT_MS, LONG, NULL),
+#endif
/*
* SMTP options
@@ -583,7 +619,7 @@ struct t_url_option url_options[] =
* FTP options
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(FTPPORT, STRING, NULL),
/*URL_DEF_OPTION(QUOTE, LIST, NULL),*/
/*URL_DEF_OPTION(POSTQUOTE, LIST, NULL),*/
@@ -667,7 +703,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(PROXY_TRANSFER_MODE, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(CRLF, LONG, NULL),
URL_DEF_OPTION(RANGE, STRING, NULL),
URL_DEF_OPTION(RESUME_FROM, LONG, NULL),
@@ -677,15 +713,15 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(RESUME_FROM_LARGE, LONGLONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(CUSTOMREQUEST, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070500
- /* libcurl >= 7.5 */
+ /* libcurl >= 7.5.0 */
URL_DEF_OPTION(FILETIME, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(NOBODY, LONG, NULL),
URL_DEF_OPTION(INFILESIZE, LONG, NULL),
#endif
@@ -694,7 +730,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(INFILESIZE_LARGE, LONGLONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(UPLOAD, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070A08
@@ -706,7 +742,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(MAXFILESIZE_LARGE, LONGLONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(TIMECONDITION, LONG, url_time_condition),
URL_DEF_OPTION(TIMEVALUE, LONG, NULL),
#endif
@@ -715,7 +751,7 @@ struct t_url_option url_options[] =
* connection options
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(TIMEOUT, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x071002
@@ -723,7 +759,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(TIMEOUT_MS, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(LOW_SPEED_LIMIT, LONG, NULL),
URL_DEF_OPTION(LOW_SPEED_TIME, LONG, NULL),
#endif
@@ -737,7 +773,7 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(MAXCONNECTS, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070700
- /* libcurl >= 7.7 */
+ /* libcurl >= 7.7.0 */
URL_DEF_OPTION(FRESH_CONNECT, LONG, NULL),
URL_DEF_OPTION(FORBID_REUSE, LONG, NULL),
URL_DEF_OPTION(CONNECTTIMEOUT, LONG, NULL),
@@ -762,6 +798,12 @@ struct t_url_option url_options[] =
/* libcurl >= 7.21.3 */
/*URL_DEF_OPTION(RESOLVE, LIST, NULL),*/
#endif
+#if LIBCURL_VERSION_NUM >= 0x072100
+ /* libcurl >= 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 >= 0x071800
/* libcurl >= 7.24.0 */
URL_DEF_OPTION(DNS_SERVERS, STRING, NULL),
@@ -772,7 +814,7 @@ struct t_url_option url_options[] =
* SSL and security options
*/
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(SSLCERT, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070903
@@ -785,13 +827,18 @@ struct t_url_option url_options[] =
/* libcurl >= 7.17.0 */
URL_DEF_OPTION(KEYPASSWD, STRING, NULL),
#endif
+#if LIBCURL_VERSION_NUM >= 0x072400
+ /* libcurl >= 7.36.0 */
+ URL_DEF_OPTION(SSL_ENABLE_ALPN, LONG, NULL),
+ URL_DEF_OPTION(SSL_ENABLE_NPN, LONG, NULL),
+#endif
#if LIBCURL_VERSION_NUM >= 0x070903
/* libcurl >= 7.9.3 */
URL_DEF_OPTION(SSLENGINE, STRING, NULL),
URL_DEF_OPTION(SSLENGINE_DEFAULT, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070100
- /* libcurl >= 7.1 */
+ /* libcurl >= 7.1.0 */
URL_DEF_OPTION(SSLVERSION, LONG, url_ssl_version),
#endif
#if LIBCURL_VERSION_NUM >= 0x070402
@@ -820,12 +867,12 @@ struct t_url_option url_options[] =
URL_DEF_OPTION(CERTINFO, LONG, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070700
- /* libcurl >= 7.7 */
+ /* libcurl >= 7.7.0 */
URL_DEF_OPTION(RANDOM_FILE, STRING, NULL),
URL_DEF_OPTION(EGDSOCKET, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x070900
- /* libcurl >= 7.9 */
+ /* libcurl >= 7.9.0 */
URL_DEF_OPTION(SSL_CIPHER_LIST, STRING, NULL),
#endif
#if LIBCURL_VERSION_NUM >= 0x071000