FreeBSD Manual Pages
CURLOPT_SOCKS5_AUTH(3) Library Functions Manual CURLOPT_SOCKS5_AUTH(3) NAME CURLOPT_SOCKS5_AUTH - methods for SOCKS5 proxy authentication SYNOPSIS #include <curl/curl.h> CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SOCKS5_AUTH, long bitmask); DESCRIPTION Pass a long as parameter, which is set to a bitmask, to tell libcurl which authentication method(s) are allowed for SOCKS5 proxy authentica- tion. The only supported flags are CURLAUTH_BASIC, which allows user- name/password authentication, CURLAUTH_GSSAPI, which allows GSS-API au- thentication, and CURLAUTH_NONE, which allows no authentication. Set the actual username and password with the CURLOPT_PROXYUSERPWD(3) op- tion. The specific socks authentication method is an access property, it does not change the security context. This means that this option changes how the connection and access to the proxy happens when a connection is setup, but it does not affect which proxy connections libcurl can reuse. libcurl may reuse a connection that was set up with a different socks authentication method. Proxy connection reuse still depends on other properties matching, such as the protocol, proxy hostname, port number, credentials and other settings that affect the connection. DEFAULT CURLAUTH_BASIC | CURLAUTH_GSSAPI PROTOCOLS This functionality affects all supported protocols EXAMPLE int main(void) { CURL *curl = curl_easy_init(); if(curl) { CURLcode result; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); /* request to use a SOCKS5 proxy */ curl_easy_setopt(curl, CURLOPT_PROXY, "socks5://user:pass@myproxy.com"); /* enable username/password authentication only */ curl_easy_setopt(curl, CURLOPT_SOCKS5_AUTH, CURLAUTH_BASIC); /* Perform the request */ result = curl_easy_perform(curl); curl_easy_cleanup(curl); } } HISTORY CURLAUTH_* macros became long types in 7.26.0, prior to this version a long cast was necessary when passed to curl_easy_setopt(3). AVAILABILITY Added in curl 7.55.0 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_PROXY(3), CURLOPT_PROXYTYPE(3) libcurl 2026-06-11 CURLOPT_SOCKS5_AUTH(3)
NAME | SYNOPSIS | DESCRIPTION | DEFAULT | PROTOCOLS | EXAMPLE | HISTORY | AVAILABILITY | RETURN VALUE | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=CURLOPT_SOCKS5_AUTH&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
