OpenSuSE Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
x SuSE Linux 13.1-RELEASE x
x SuSE Linux 13.1-RELEASEx
CURLOPT_PRE_PROXY(3)                libcurl               CURLOPT_PRE_PROXY(3)

NAME
       CURLOPT_PRE_PROXY - pre-proxy host to use

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PRE_PROXY, char *preproxy);

DESCRIPTION
       Set  the preproxy to use for the upcoming request. The parameter should
       be a char * to a null-terminated string holding the host name or dotted
       numerical  IP  address. A numerical IPv6 address must be written within
       [brackets].

       To specify port number in this string, append :[port] to the end of the
       host name. The proxy's port number may optionally be specified with the
       separate  option  CURLOPT_PROXYPORT(3).  If  not   specified,   libcurl
       defaults to using port 1080 for proxies.

       A  pre  proxy is a SOCKS proxy that curl connects to before it connects
       to the HTTP(S) proxy specified in the CURLOPT_PROXY(3) option. The  pre
       proxy can only be a SOCKS proxy.

       The  pre  proxy  string  should be prefixed with [scheme]:// to specify
       which kind of socks is used. Use socks4://,  socks4a://,  socks5://  or
       socks5h://  (the  last  one to enable socks5 and asking the proxy to do
       the resolving, also known as CURLPROXY_SOCKS5_HOSTNAME type) to request
       the  specific  SOCKS  version  to  be used. Otherwise SOCKS4 is used as
       default.

       Setting the pre proxy string to "" (an empty  string)  explicitly  dis-
       ables the use of a pre proxy.

       The  application  does not have to keep the string around after setting
       this option.

DEFAULT
       Default is NULL, meaning no pre proxy is used.

       When you set a host name to use, do not assume that there is  any  par-
       ticular single port number used widely for proxies. Specify it!

PROTOCOLS
       All  except  file://.  Note  that  some protocols do not work well over
       proxy.

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl) {
         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/file.txt");
         curl_easy_setopt(curl, CURLOPT_PRE_PROXY, "socks4://socks-proxy:1080");
         curl_easy_setopt(curl, CURLOPT_PROXY, "http://proxy:80");
         curl_easy_perform(curl);
       }

AVAILABILITY
       Added in 7.52.0

RETURN VALUE
       Returns CURLE_OK if proxies are supported, CURLE_UNKNOWN_OPTION if not,
       or CURLE_OUT_OF_MEMORY if there was insufficient heap space.

SEE ALSO
       CURLOPT_PROXY(3), CURLOPT_HTTPPROXYTUNNEL(3)

ibcurl 8.4.0                  September 27, 2023          CURLOPT_PRE_PROXY(3)

Want to link to this manual page? Use this URL:
<
http://star2.abcm.com/cgi-bin/bsdi-man?query=CURLOPT_PRE_PROXY&sektion=3&manpath=>

home | help