/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file LICENSE.rst or https://cmake.org/licensing for details. */ #pragma once #include "cmConfigure.h" // IWYU pragma: keep #include #include #include #include // curl versions before 7.87.0 did not provide CURL_WRITEFUNC_ERROR #if defined(LIBCURL_VERSION_NUM) && LIBCURL_VERSION_NUM < 0x075700 # define CURL_WRITEFUNC_ERROR 0xFFFFFFFF #endif cm::optional cmCurlParseTLSVersion(cm::string_view tls_version); cm::optional cmCurlPrintTLSVersion(int curl_tls_version); std::string cmCurlSetCAInfo(::CURL* curl, std::string const& cafile = {}); std::string cmCurlSetNETRCOption(::CURL* curl, std::string const& netrc_level, std::string const& netrc_file); std::string cmCurlFixFileURL(std::string url); ::CURLcode cm_curl_global_init(long flags); ::CURL* cm_curl_easy_init();