Manpage logo

CURLOPT_PROXYUSERNAME - username to use for proxy authentication

NAME  SYNOPSIS  DESCRIPTION  DEFAULT  PROTOCOLS  EXAMPLE  AVAILABILITY  RETURN VALUE  SEE ALSO 

NAME

CURLOPT_PROXYUSERNAME − username to use for proxy authentication

SYNOPSIS

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYUSERNAME,
char *username);

DESCRIPTION

Pass a char pointer as parameter, which should be pointing to the null−terminated username to use for the transfer.

CURLOPT_PROXYUSERNAME(3) sets the username to be used in protocol authentication with the proxy.

To specify the proxy password use the CURLOPT_PROXYPASSWORD(3).

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

DEFAULT

blank

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/foo.bin");
curl_easy_setopt(curl, CURLOPT_PROXY, "http://localhost:8080");
curl_easy_setopt(curl, CURLOPT_PROXYUSERNAME, "mrsmith");
curl_easy_setopt(curl, CURLOPT_PROXYPASSWORD, "qwerty");
result = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
}

AVAILABILITY

Added in curl 7.19.1

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_HTTPAUTH(3), CURLOPT_PROXYAUTH(3), CURLOPT_PROXYPASSWORD(3), CURLOPT_USERNAME(3)


Updated 2026-06-01 - jenkler.se | uex.se