static CurlHandler() { // curl_global_init call handled by Interop.libcurl's cctor // Verify the version of curl we're using is new enough s_curlVersionInfoData = Marshal.PtrToStructure<CurlVersionInfoData>(Interop.libcurl.curl_version_info(CurlAge)); if (s_curlVersionInfoData.age < MinCurlAge) { throw new InvalidOperationException(SR.net_http_unix_https_libcurl_too_old); } // Feature detection s_supportsSSL = (CurlFeatures.CURL_VERSION_SSL & s_curlVersionInfoData.features) != 0; s_supportsAutomaticDecompression = (CurlFeatures.CURL_VERSION_LIBZ & s_curlVersionInfoData.features) != 0; }
static CurlHandler() { // curl_global_init call handled by Interop.libcurl's cctor // Verify the version of curl we're using is new enough s_curlVersionInfoData = Marshal.PtrToStructure <CurlVersionInfoData>(Interop.libcurl.curl_version_info(CurlAge)); if (s_curlVersionInfoData.age < MinCurlAge) { throw new InvalidOperationException(SR.net_http_unix_https_libcurl_too_old); } // Feature detection s_supportsSSL = (CurlFeatures.CURL_VERSION_SSL & s_curlVersionInfoData.features) != 0; s_supportsAutomaticDecompression = (CurlFeatures.CURL_VERSION_LIBZ & s_curlVersionInfoData.features) != 0; }
static CurlHandler() { int result = Interop.libcurl.curl_global_init(Interop.libcurl.CurlGlobalFlags.CURL_GLOBAL_ALL); if (result != CURLcode.CURLE_OK) { throw new InvalidOperationException("Cannot use libcurl in this process"); } curlVersionInfoData = Marshal.PtrToStructure <CurlVersionInfoData>(Interop.libcurl.curl_version_info(CurlAge)); if (curlVersionInfoData.age < MinCurlAge) { throw new InvalidOperationException(SR.net_http_unix_https_libcurl_too_old); } _supportsSSL = (CurlFeatures.CURL_VERSION_SSL & curlVersionInfoData.features) != 0; _supportsAutomaticDecompression = (CurlFeatures.CURL_VERSION_LIBZ & curlVersionInfoData.features) != 0; }