Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

CURLOPT_PROXYAUTH (3)

Name

CURLOPT_PROXYAUTH - HTTP proxy authentication methods

Synopsis

#include <curl/curl.h>

CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYAUTH, long bitmask);

Description

CURLOPT_PROXYAUTH(3)       curl_easy_setopt options       CURLOPT_PROXYAUTH(3)



NAME
       CURLOPT_PROXYAUTH - HTTP proxy authentication methods

SYNOPSIS
       #include <curl/curl.h>

       CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYAUTH, long bitmask);

DESCRIPTION
       Pass  a  long  as parameter, which is set to a bitmask, to tell libcurl
       which HTTP authentication method(s) you want it to use for  your  proxy
       authentication.   If more than one bit is set, libcurl will first query
       the site to see what authentication methods it supports and  then  pick
       the best one you allow it to use. For some methods, this will induce an
       extra network round-trip. Set the actual name  and  password  with  the
       CURLOPT_PROXYUSERPWD(3) option.

       The bitmask can be constructed by or'ing together the bits fully listed
       and described in the CURLOPT_HTTPAUTH(3) man page.

DEFAULT
       CURLAUTH_BASIC

PROTOCOLS
       HTTP

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl) {
         CURLcode ret;
         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
         /* use this proxy */
         curl_easy_setopt(curl, CURLOPT_PROXY, "http://local.example.com:1080");
         /* allow whatever auth the proxy speaks */
         curl_easy_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_ANY);
         /* set the proxy credentials */
         curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, "james:007");
         ret = curl_easy_perform(curl);
         curl_easy_cleanup(curl);
       }

AVAILABILITY
       Added in 7.10.7

RETURN VALUE
       Returns CURLE_OK if the option is  supported,  CURLE_UNKNOWN_OPTION  if
       not,  or  CURLE_NOT_BUILT_IN  if  the  bitmask  specified  no supported
       authentication methods.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+

SEE ALSO
       CURLOPT_PROXY(3), CURLOPT_PROXYTYPE(3),  CURLOPT_PROXYUSERPWD(3),  CUR-
       LOPT_PROXYPORT(3),



NOTES
       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source       was       downloaded      from       https://curl.se/down-
       load/curl-7.83.1.tar.bz2.

       Further information about this software can be found on the open source
       community website at http://curl.haxx.se/.



libcurl 7.83.1                 November 26, 2021          CURLOPT_PROXYAUTH(3)