Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

libcurl-env (3)

Name

libcurl-env - environment variables libcurl understands

Synopsis

Please see following description for synopsis

Description

libcurl environment variables                                   libcurl-env(3)



NAME
       libcurl-env - environment variables libcurl understands

DESCRIPTION
       libcurl  reads  and  understands a set of environment variables that if
       set will control and change behaviors. This is the full list  of  vari-
       ables  to set and description of what they do. Also note that curl, the
       command line tool, supports a set of additional  environment  variables
       independently of this.

       [scheme]_proxy
              When  libcurl  is  given  a  URL  to use in a transfer, it first
              extracts the "scheme" part from the URL and checks if there is a
              given  proxy set for that in its corresponding environment vari-
              able. A  URL  like  "https://example.com"  will  hence  use  the
              "http_proxy" variable, while a URL like "ftp://example.com" will
              use the "ftp_proxy" variable.

              These proxy variables are also checked for  in  their  uppercase
              versions,  except the "http_proxy" one which is only used lower-
              case. Note also that some systems actually have a case  insensi-
              tive  handling  of  environment  variables  and  then  of course
              "HTTP_PROXY" will still work...

       ALL_PROXY
              This is a setting to set proxy for all  URLs,  independently  of
              what  scheme  is being used. Note that the scheme specific vari-
              ables will override this one if set.

       CURL_SSL_BACKEND
              When libcurl is built to support multiple SSL backends, it  will
              select  a specific backend at first use. If no selection is done
              by the program using libcurl, this variable's selection will  be
              used.  Setting  a  name  that is not a built-in alternative will
              make libcurl stay with the default.

              SSL backend names (case-insensitive):  bearssl,  gnutls,  gskit,
              mbedtls, nss, openssl, rustls, schannel, secure-transport, wolf-
              ssl

       HOME   When the netrc feature is used (CURLOPT_NETRC(3)), this variable
              is  checked as the primary way to find the "current" home direc-
              tory in which the .netrc file is likely to exist.

       LOGNAME
              User name to use when invoking the ntlm-wb tool, if NTLMUSER was
              not set.

       NO_PROXY
              This  has  the  same  functionality  as  the  CURLOPT_NOPROXY(3)
              option: it gives libcurl a comma-separated  list  of  host  name
              patterns for which libcurl should not use a proxy.

       NTLMUSER
              User name to use when invoking the ntlm-wb tool.

       SSLKEYLOGFILE
              When  set and libcurl runs with a SSL backend that supports this
              feature, libcurl will save SSL secrets into the given file name.
              Using  those  SSL  secrets,  other tools (such as Wireshark) can
              decrypt the SSL communication and analyze/view the traffic.

       SSL_DIR
              When libcurl runs with the NSS backends for TLS  features,  this
              variable  is  used  to  find  the directory for NSS PKI database
              instead of the built-in.

       USER   User name to use when invoking the ntlm-wb tool, if NTLMUSER and
              LOGNAME were not set.

Debug Variables
       There's  a  set  of  variables  only recognized and used if libcurl was
       built "debug enabled", which should never be true for a library used in
       production.

       CURL_GETHOSTNAME
              Debug-only variable.

       CURL_FORCETIME
              Debug-only variable.

       CURL_ENTROPY
              Debug-only  variable.  Used  to  set  a fixed faked value to use
              instead of a proper random number so that functions  in  libcurl
              that are otherwise getting random outputs can be tested for what
              they generate.

       CURL_TRACE
              Debug-only variable. Used for debugging the lib/ldap implementa-
              tion.

       CURL_NTLM_WB_FILE
              Debug-only variable. Used to set to a debug-version of the ntlm-
              wb executable.

       CURL_OPENLDAP_TRACE
              Debug-only  variable.  Used  for  debugging  the  lib/openldap.c
              implementation.



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


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

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                 January 09, 2022                 libcurl-env(3)