GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
CURLOPT_DNS_CACHE_TIMEOUT(3) curl_easy_setopt options CURLOPT_DNS_CACHE_TIMEOUT(3)

CURLOPT_DNS_CACHE_TIMEOUT - life-time for DNS cache entries

#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_CACHE_TIMEOUT, long age);

Pass a long, this sets the timeout in seconds. Name resolves will be kept in memory and used for this number of seconds. Set to zero to completely disable caching, or set to -1 to make the cached entries remain forever. By default, libcurl caches this info for 60 seconds.

The name resolve functions of various libc implementations do not re-read name server information unless explicitly told so (for example, by calling res_init(3)). This may cause libcurl to keep using the older server even if DHCP has updated the server info, and this may look like a DNS cache issue to the casual libcurl-app user.

Note that DNS entries have a "TTL" property but libcurl does not use that. This DNS cache timeout is entirely speculative that a name will resolve to the same address for a certain small amount of time into the future.

60

All

CURL *curl = curl_easy_init();
if(curl) {
  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/foo.bin");
  /* only reuse addresses for a short time */
  curl_easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, 2L);
  ret = curl_easy_perform(curl);
  /* in this second request, the cache will not be used if more than
     two seconds have passed since the previous name resolve */
  ret = curl_easy_perform(curl);
  curl_easy_cleanup(curl);
}

Always

Returns CURLE_OK

CURLOPT_DNS_USE_GLOBAL_CACHE(3), CURLOPT_DNS_SERVERS(3), CURLOPT_RESOLVE(3),
November 26, 2021 libcurl 7.83.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.