From 6facbae1a01d3f45e6450025dbc79e92c75efb1a Mon Sep 17 00:00:00 2001 From: Alexey Melnichuk Date: Sun, 23 Jun 2019 15:42:58 +0300 Subject: [PATCH] Support new options from 7.65.1 --- appveyor.yml | 2 +- src/lcopteasy.h | 8 ++++++++ src/lcopturl.h | 1 + test/test_urlapi.lua | 16 ++++++++++++++++ 4 files changed, 26 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 07dbc35..19aac24 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -7,7 +7,7 @@ shallow_clone: true environment: LR_EXTERNAL: c:\external - CURL_VER: 7.63.0 + CURL_VER: 7.65.1 matrix: - LUA: "lua 5.1" diff --git a/src/lcopteasy.h b/src/lcopteasy.h index 166b07d..6e0940f 100644 --- a/src/lcopteasy.h +++ b/src/lcopteasy.h @@ -88,7 +88,11 @@ OPT_ENTRY( interface, INTERFACE, STR, LCURL_STORE_ST OPT_ENTRY( localport, LOCALPORT, LNG, 0, LCURL_DEFAULT_VALUE ) OPT_ENTRY( localportrange, LOCALPORTRANGE, LNG, 0, 1 ) OPT_ENTRY( dns_cache_timeout, DNS_CACHE_TIMEOUT, LNG, 0, 60 ) + +#if !LCURL_CURL_VER_GE(7,65,0) OPT_ENTRY( dns_use_global_cache, DNS_USE_GLOBAL_CACHE, LNG, 0, LCURL_DEFAULT_VALUE ) +#endif + #if LCURL_CURL_VER_GE(7,25,0) OPT_ENTRY( dns_servers, DNS_SERVERS, STR, LCURL_STORE_STRING, LCURL_DEFAULT_VALUE ) #endif @@ -457,6 +461,10 @@ OPT_ENTRY(doh_url, DOH_URL, STR, 0, LCURL_DEFA OPT_ENTRY(upload_buffersize, UPLOAD_BUFFERSIZE, LNG, 0, 64 * 1024) #endif +#if LCURL_CURL_VER_GE(7,65,0) +OPT_ENTRY(maxage_conn, MAXAGE_CONN, LNG, 0, LCURL_DEFAULT_VALUE) +#endif + //{ Restore system macros #ifdef LCURL__TCP_FASTOPEN diff --git a/src/lcopturl.h b/src/lcopturl.h index f076cc6..ee853f3 100644 --- a/src/lcopturl.h +++ b/src/lcopturl.h @@ -8,6 +8,7 @@ ENTRY_PART(query, UPART_QUERY , CURLUE_NO_QUERY ) ENTRY_PART(scheme, UPART_SCHEME , CURLUE_NO_SCHEME ) ENTRY_PART(url, UPART_URL , CURLUE_OK ) ENTRY_PART(user, UPART_USER , CURLUE_NO_USER ) +ENTRY_PART(zoneid, UPART_ZONEID , CURLUE_UNKNOWN_PART ) ENTRY_FLAG(DEFAULT_PORT ) ENTRY_FLAG(NO_DEFAULT_PORT ) diff --git a/test/test_urlapi.lua b/test/test_urlapi.lua index ff0ab82..5ffef78 100644 --- a/test/test_urlapi.lua +++ b/test/test_urlapi.lua @@ -211,6 +211,22 @@ end) -- assert_equal("http://example.com/?a=hello+world", url:get_url()) -- end) +if curl.UPART_ZONEID then + +it('should returns zoneid', function() + url = scurl.url('http://[fe80:3438:7667:5c77:ce27%18]:3800') + assert_equal('18', url:get_zoneid()) +end) + +it('should returns empty on missing zoneid', function() + url = scurl.url('http://[fe80:3438:7667:5c77:ce27]:3800') + assert_equal(curl.null, url:get_zoneid()) +end) + +else + test_zoneid = skip_case('URL API supports zoneid since version 7.65.0') +end + end end local _ENV = TEST_CASE'curlu parameter' if ENABLE then