manpagez: man pages & more
man CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)
Home | html | info | man
CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)                  Library Functions Manual


NAME

       CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS - head start for IPv6 for happy
       eyeballs


SYNOPSIS

       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS,
                                 long timeout);


DESCRIPTION

       Happy eyeballs is an algorithm that attempts to connect to both IPv4
       and IPv6 addresses for dual-stack hosts, preferring IPv6 first for
       timeout milliseconds. If the IPv6 address cannot be connected to within
       that time then a connection attempt is made to the IPv4 address in
       parallel. The first connection to be established is the one that is
       used.

       The range of suggested useful values for timeout is limited. Happy
       Eyeballs RFC 6555 says "It is RECOMMENDED that connection attempts be
       paced 150-250 ms apart to balance human factors against network load."
       libcurl currently defaults to 200 ms. Firefox and Chrome currently
       default to 300 ms.


DEFAULT

       CURL_HET_DEFAULT (currently defined as 200L)


PROTOCOLS

       This functionality affects all supported protocols


EXAMPLE

       int main(void)
       {
         CURL *curl = curl_easy_init();
         if(curl) {
           curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
           curl_easy_setopt(curl, CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS, 300L);

           curl_easy_perform(curl);

           /* always cleanup */
           curl_easy_cleanup(curl);
         }
       }


AVAILABILITY

       Added in curl 7.59.0


RETURN VALUE

       Returns CURLE_OK


SEE ALSO

       CURLOPT_CONNECTTIMEOUT_MS(3), CURLOPT_LOW_SPEED_LIMIT(3),
       CURLOPT_TIMEOUT(3)

libcurl                           2024-08-05
                                          CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)

curl 8.9.1 - Generated Tue Aug 13 16:33:04 CDT 2024
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.