DragonFly On-Line Manual Pages

Search: Section:  


CURLOPT_HAPPY_EYEBALLS_TIMEcurl_easy_setopCURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)

NAME

CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS - head start for ipv6 for happy eye- balls

SYNOPSIS

#include <curl/curl.h> CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HAPPY_EYEBALLS_TIME- OUT_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 par- allel. The first connection to be established is the one that is used. The range of suggested useful values for timeout is limited. Happy Eye- balls 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)

EXAMPLE

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 7.59.0

RETURN VALUE

Returns CURLE_OK libcurl 7.63.0 February 21CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)

Search: Section: