57 std::lock_guard<std::mutex> lock(
s_lock );
61 if( curl_global_init( CURL_GLOBAL_ALL ) != CURLE_OK )
91 std::lock_guard<std::mutex> lock(
s_lock );
95 curl_global_cleanup();
110 curl_version_info_data*
info = curl_version_info( CURLVERSION_NOW );
116 res +=
"libcurl version: " + std::string(
info->version );
121 if(
info->features & CURL_VERSION_SSL )
123 res +=
"with SSL - ";
124 res += std::string(
info->ssl_version );
128 res +=
"without SSL";
144 return LIBCURL_VERSION;
static void Cleanup()
Call curl_global_cleanup for the application.
static void Init()
Call curl_global_init for the application.
static std::string GetSimpleVersion()
Report back curl version only and SSL library support.
static const char * GetVersion()
Wrapper for curl_version().
#define THROW_IO_ERROR(msg)
static volatile bool s_initialized
std::string GetCurlLibVersion()
std::string GetKicadCurlVersion()
static void at_terminate()
At process termination, using atexit() keeps the CURL stuff out of the singletops and PGM_BASE.