Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Thursday, June 13, 2019
 
 

CURLOPT_PROXY_SSLCERT (3)

Name

CURLOPT_PROXY_SSLCERT - set SSL proxy client certificate

Synopsis

#include <curl/curl.h>

CURLcode  curl_easy_setopt(CURL  *handle,  CURLOPT_PROXY_SSLCERT,  char
*cert);

Description

CURLOPT_PROXY_SSLCERT(3)   curl_easy_setopt options   CURLOPT_PROXY_SSLCERT(3)



NAME
       CURLOPT_PROXY_SSLCERT - set SSL proxy client certificate

SYNOPSIS
       #include <curl/curl.h>

       CURLcode  curl_easy_setopt(CURL  *handle,  CURLOPT_PROXY_SSLCERT,  char
       *cert);

DESCRIPTION
       This option is for connecting to an HTTPS proxy, not an HTTPS server.

       Pass a pointer to a zero terminated string  as  parameter.  The  string
       should  be  the file name of your client certificate used to connect to
       the HTTPS proxy.  The default format is "P12" on Secure  Transport  and
       "PEM"  on other engines, and can be changed with CURLOPT_PROXY_SSLCERT-
       TYPE(3).

       With NSS or Secure Transport, this can also be the nickname of the cer-
       tificate  you  wish to authenticate with as it is named in the security
       database. If you want to use a file from the current directory,  please
       precede  it  with "./" prefix, in order to avoid confusion with a nick-
       name.

       When using a client certificate, you most likely also need to provide a
       private key with CURLOPT_PROXY_SSLKEY(3).

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

DEFAULT
       NULL

PROTOCOLS
       Used with HTTPS proxy

EXAMPLE
       CURL *curl = curl_easy_init();
       if(curl) {
         curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
         curl_easy_setopt(curl, CURLOPT_PROXY, "https://proxy");
         curl_easy_setopt(curl, CURLOPT_PROXY_SSLCERT, "client.pem");
         curl_easy_setopt(curl, CURLOPT_PROXY_SSLKEY, "key.pem");
         curl_easy_setopt(curl, CURLOPT_PROXY_KEYPASSWD, "s3cret");
         ret = curl_easy_perform(curl);
         curl_easy_cleanup(curl);
       }

AVAILABILITY
       Added in 7.52.0

RETURN VALUE
       Returns CURLE_OK  if  TLS  enabled,  CURLE_UNKNOWN_OPTION  if  not,  or
       CURLE_OUT_OF_MEMORY if there was insufficient heap space.


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


       +---------------+------------------+
       |ATTRIBUTE TYPE | ATTRIBUTE VALUE  |
       +---------------+------------------+
       |Availability   | web/curl         |
       +---------------+------------------+
       |Stability      | Uncommitted      |
       +---------------+------------------+
SEE ALSO
       CURLOPT_PROXY_SSLCERTTYPE(3),       CURLOPT_PROXY_SSLKEY(3),       CUR-
       LOPT_SSLCERT(3),



NOTES
       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source   was    downloaded    from     https://github.com/curl/curl/ar-
       chive/curl-7_64_0.zip

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



libcurl 7.52.0                    16 Nov 2016         CURLOPT_PROXY_SSLCERT(3)