1libcurl-env(3)           libcurl environment variables          libcurl-env(3)
2
3
4

NAME

6       libcurl-env - environment variables libcurl understands
7

DESCRIPTION

9       libcurl  reads  and  understands a set of environment variables that if
10       set will control and change behaviors. This is the full list  of  vari‐
11       ables  to set and description of what they do. Also note that curl, the
12       command line tool, supports a set of additional  environment  variables
13       independently of this.
14
15       [scheme]_proxy
16              When  libcurl  is given a URL to use in a transfer, it first ex‐
17              tracts the "scheme" part from the URL and checks if there  is  a
18              given  proxy set for that in its corresponding environment vari‐
19              able. A  URL  like  "https://example.com"  will  hence  use  the
20              "http_proxy" variable, while a URL like "ftp://example.com" will
21              use the "ftp_proxy" variable.
22
23              These proxy variables are also checked for  in  their  uppercase
24              versions,  except the "http_proxy" one which is only used lower‐
25              case. Note also that some systems actually have a case  insensi‐
26              tive  handling  of  environment  variables  and  then  of course
27              "HTTP_PROXY" will still work...
28
29       ALL_PROXY
30              This is a setting to set proxy for all  URLs,  independently  of
31              what  scheme  is being used. Note that the scheme specific vari‐
32              ables will override this one if set.
33
34       CURL_SSL_BACKEND
35              When libcurl is built to support multiple SSL backends, it  will
36              select  a specific backend at first use. If no selection is done
37              by the program using libcurl, this variable's selection will  be
38              used. Setting a name that isn't a built-in alternative will make
39              libcurl stay with the default.
40
41              SSL backend names (case-insensitive):  bearssl,  gnutls,  gskit,
42              mbedtls, mesalink, nss, openssl, rustls, schannel, secure-trans‐
43              port, wolfssl
44
45       HOME   When the netrc feature is used (CURLOPT_NETRC(3)), this variable
46              is  checked as the primary way to find the "current" home direc‐
47              tory in which the .netrc file is likely to exist.
48
49       LOGNAME
50              User name to use when invoking the  ntlm-wb  tool,  if  NTLMUSER
51              wasn't set.
52
53       NO_PROXY
54              This  has  the  same functionality as the CURLOPT_NOPROXY(3) op‐
55              tion: it gives libcurl a comma-separated list of host name  pat‐
56              terns for which libcurl should not use a proxy.
57
58       NTLMUSER
59              User name to use when invoking the ntlm-wb tool.
60
61       SSLKEYLOGFILE
62              When  set and libcurl runs with a SSL backend that supports this
63              feature, libcurl will save SSL secrets into the given file name.
64              Using those SSL secrets, other tools (such as Wireshark) can de‐
65              crypt the SSL communication and analyze/view the traffic.
66
67       SSL_DIR
68              When libcurl runs with the NSS backends for TLS  features,  this
69              variable  is used to find the directory for NSS PKI database in‐
70              stead of the built-in.
71
72       USER   User name to use when invoking the ntlm-wb tool, if NTLMUSER and
73              LOGNAME weren't set.
74

Debug Variables

76       There's  a  set  of  variables  only recognized and used if libcurl was
77       built "debug enabled", which should never be true for a library used in
78       production.
79
80       CURL_GETHOSTNAME
81              Debug-only variable.
82
83       CURL_FORCETIME
84              Debug-only variable.
85
86       CURL_ENTROPY
87              Debug-only  variable. Used to set a fixed faked value to use in‐
88              stead of a proper random number so  that  functions  in  libcurl
89              that are otherwise getting random outputs can be tested for what
90              they generate.
91
92       CURL_TRACE
93              Debug-only variable. Used for debugging the lib/ldap implementa‐
94              tion.
95
96       CURL_NTLM_WB_FILE
97              Debug-only variable. Used to set to a debug-version of the ntlm-
98              wb executable.
99
100       CURL_OPENLDAP_TRACE
101              Debug-only variable. Used for debugging the  lib/openldap.c  im‐
102              plementation.
103
104
105
106libcurl 7.76.1                  March 27, 2021                  libcurl-env(3)
Impressum