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


NAME

       CURLOPT_LOCALPORTRANGE - number of additional local ports to try


SYNOPSIS

       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_LOCALPORTRANGE,
                                 long range);


DESCRIPTION

       Pass a long. The range argument is the number of attempts libcurl makes
       to find a working local port number. It starts with the given
       CURLOPT_LOCALPORT(3) and adds one to the number for each retry. Setting
       this option to 1 or below makes libcurl only do one try for the exact
       port number. Port numbers by nature are scarce resources that are busy
       at times so setting this value to something too low might cause
       unnecessary connection setup failures.


DEFAULT

       1


PROTOCOLS

       This functionality affects all supported protocols


EXAMPLE

       int main(void)
       {
         CURL *curl = curl_easy_init();
         if(curl) {
           CURLcode res;
           curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/foo.bin");
           curl_easy_setopt(curl, CURLOPT_LOCALPORT, 49152L);
           /* and try 20 more ports following that */
           curl_easy_setopt(curl, CURLOPT_LOCALPORTRANGE, 20L);
           res = curl_easy_perform(curl);
           curl_easy_cleanup(curl);
         }
       }


AVAILABILITY

       Added in curl 7.15.2


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

       CURLOPT_INTERFACE(3), CURLOPT_LOCALPORT(3)

libcurl                           2025-02-08         CURLOPT_LOCALPORTRANGE(3)

curl 8.12.0 - Generated Sat Feb 15 12:46:09 CST 2025
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.