CURLOPT_DNS_USE_GLOBAL_CACHE - Man Page
global DNS cache
Synopsis
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_USE_GLOBAL_CACHE,
long enable);Description
Has no function since 7.62.0. Do not use.
Pass a long. If the enable value is 1, it tells curl to use a global DNS cache that survives between easy handle creations and deletions. This is not thread-safe and this uses a global variable.
See CURLOPT_SHARE(3) and curl_share_init(3) for the correct way to share DNS cache between transfers.
Default
0
Protocols
This functionality affects all supported protocols
Example
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
CURLcode ret;
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
/* switch off the use of a global, thread unsafe, cache */
curl_easy_setopt(curl, CURLOPT_DNS_USE_GLOBAL_CACHE, 0L);
ret = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
}Deprecated
Deprecated since 7.11.1. Functionality removed in 7.62.0.
Availability
Added in curl 7.9.3
Return Value
curl_easy_setopt(3) returns a CURLcode indicating success or error.
CURLE_OK (0) means everything was OK, non-zero means an error occurred, see libcurl-errors(3).
See Also
Referenced By
curl_easy_setopt(3), CURLOPT_DNS_CACHE_TIMEOUT(3), libcurl-thread(3).
2025-10-13 libcurl