Add. Support new options from libcurl 7.62.0

This commit is contained in:
Alexey Melnichuk 2018-11-03 12:46:22 +03:00
parent 12909fd5d4
commit a2c3708d2e
5 changed files with 28 additions and 1 deletions

View File

@ -7,7 +7,7 @@ shallow_clone: true
environment:
LR_EXTERNAL: c:\external
CURL_VER: 7.61.0
CURL_VER: 7.62.0
matrix:
- LUA: "lua 5.1"

View File

@ -291,6 +291,20 @@ static int lcurl_easy_mime(lua_State *L){
#endif
#if LCURL_CURL_VER_GE(7,62,0)
static int lcurl_easy_upkeep(lua_State *L){
lcurl_easy_t *p = lcurl_geteasy(L);
CURLcode code = curl_easy_upkeep(p->curl);
if(code == CURLE_OK){
lua_settop(L, 1);
return 1;
}
return lcurl_fail_ex(L, p->err_mode, LCURL_ERROR_EASY, code);
}
#endif
//{ OPTIONS
//{ set
@ -1760,6 +1774,7 @@ static const struct luaL_Reg lcurl_easy_methods[] = {
{ "escape", lcurl_easy_escape },
{ "unescape", lcurl_easy_unescape },
{ "perform", lcurl_easy_perform },
{ "upkeep", lcurl_easy_upkeep },
{ "close", lcurl_easy_cleanup },
{ "__gc", lcurl_easy_cleanup },
{ "__tostring", lcurl_easy_to_s },

View File

@ -71,7 +71,11 @@ ERR_ENTRY ( RECV_ERROR )
ERR_ENTRY ( OBSOLETE57 )
ERR_ENTRY ( SSL_CERTPROBLEM )
ERR_ENTRY ( SSL_CIPHER )
#if LCURL_CURL_VER_GE(7,62,0)
ERR_ENTRY ( OBSOLETE51 )
#else
ERR_ENTRY ( SSL_CACERT )
#endif
ERR_ENTRY ( BAD_CONTENT_ENCODING )
ERR_ENTRY ( LDAP_INVALID_URL )
ERR_ENTRY ( FILESIZE_EXCEEDED )

View File

@ -450,6 +450,13 @@ OPT_ENTRY(proxy_tls13_ciphers, PROXY_TLS13_CIPHERS, STR, 0, LCURL_DEFA
OPT_ENTRY(tls13_ciphers, TLS13_CIPHERS, STR, 0, LCURL_DEFAULT_VALUE)
#endif
#if LCURL_CURL_VER_GE(7,61,0)
OPT_ENTRY(upkeep_interval_ms, UPKEEP_INTERVAL_MS, LNG, 0, CURL_UPKEEP_INTERVAL_DEFAULT)
OPT_ENTRY(doh_url, DOH_URL, STR, 0, LCURL_DEFAULT_VALUE)
// thre no named value for default value. It just defined as 64kB in documentation
OPT_ENTRY(upload_buffersize, UPLOAD_BUFFERSIZE, LNG, 0, 64 * 1024)
#endif
//{ Restore system macros
#ifdef LCURL__TCP_FASTOPEN

View File

@ -381,6 +381,7 @@ Easy.setopt_httpauth = wrap_setopt_flags("httpauth", {
["ONLY" ] = curl.AUTH_ONLY;
["ANY" ] = curl.AUTH_ANY;
["ANYSAFE" ] = curl.AUTH_ANYSAFE;
["BEARER" ] = curl.AUTH_BEARER;
})
Easy.setopt_ssh_auth_types = wrap_setopt_flags("ssh_auth_types", {