system/httptool: make timeouts flexible

Signed-off-by: M. Liebmann <git@tuxcode.de>
This commit is contained in:
FlatTV
2016-09-07 14:58:40 +02:00
committed by M. Liebmann
parent 4c8de6960e
commit f62a3ada8b
2 changed files with 8 additions and 8 deletions

View File

@@ -66,7 +66,7 @@ int CHTTPTool::show_progress( void *clientp, double dltotal, double dlnow, doubl
return 0;
}
//#define DEBUG
bool CHTTPTool::downloadFile(const std::string & URL, const char * const downloadTarget, int globalProgressEnd)
bool CHTTPTool::downloadFile(const std::string & URL, const char * const downloadTarget, int globalProgressEnd, int connecttimeout/*=10*/, int timeout/*=1800*/)
{
CURL *curl;
CURLcode res;
@@ -97,8 +97,8 @@ printf("url is %s\n", URL.c_str());
curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0);
curl_easy_setopt(curl, CURLOPT_USERAGENT, userAgent.c_str());
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, (long)1);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, 1800);
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 10);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, connecttimeout);
curl_easy_setopt(curl, CURLOPT_FAILONERROR, true);
#ifdef DEBUG
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1);
@@ -136,7 +136,7 @@ printf("download code %d\n", res);
return res==CURLE_OK;
}
std::string CHTTPTool::downloadString(const std::string & URL, int globalProgressEnd)
std::string CHTTPTool::downloadString(const std::string & URL, int globalProgressEnd, int connecttimeout/*=10*/, int timeout/*=1800*/)
{
CURL *curl;
CURLcode res;
@@ -161,8 +161,8 @@ printf("url is %s\n", URL.c_str());
curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0);
curl_easy_setopt(curl, CURLOPT_USERAGENT, userAgent.c_str());
curl_easy_setopt(curl, CURLOPT_NOSIGNAL, (long)1);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, 1800);
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 10);
curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, connecttimeout);
curl_easy_setopt(curl, CURLOPT_FAILONERROR, true);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, false);
#ifdef DEBUG