diff options
Diffstat (limited to 'docs/libcurl/libcurl-env-dbg.md')
-rw-r--r-- | docs/libcurl/libcurl-env-dbg.md | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/docs/libcurl/libcurl-env-dbg.md b/docs/libcurl/libcurl-env-dbg.md new file mode 100644 index 000000000..21b763bb4 --- /dev/null +++ b/docs/libcurl/libcurl-env-dbg.md @@ -0,0 +1,118 @@ +--- +c: Copyright (C) Daniel Stenberg, <daniel.se>, et al. +SPDX-License-Identifier: curl +Title: libcurl-env-dbg +Section: 3 +Source: libcurl +See-also: + - libcurl-env (3) +--- + +# NAME + +libcurl-env-dbg - environment variables libcurl DEBUGBUILD understands + +# DESCRIPTION + +This is 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. +These variables are intended for internal use only, subject to change and have +many effects on the behavior of libcurl. Refer to the source code to determine +how exactly they are being used. + +## CURL_ALTSVC_HTTP + +Bypass the AltSvc HTTPS protocol restriction if this variable exists. + +## CURL_DBG_SOCK_RBLOCK + +The percentage of recv() calls that should be answered with a EAGAIN at random. +For TCP/UNIX sockets. + +## CURL_DBG_SOCK_RMAX + +The maximum data that shall be received from the network in one recv() call. +For TCP/UNIX sockets. This is applied to every recv. + +Example: **CURL_DBG_SOCK_RMAX=400** means recv buffer size is limited to a +maximum of 400 bytes. + +## CURL_DBG_SOCK_WBLOCK + +The percentage of send() calls that should be answered with a EAGAIN at random. +For TCP/UNIX sockets. + +## CURL_DBG_SOCK_WPARTIAL + +The percentage of data that shall be written to the network. For TCP/UNIX +sockets. This is applied to every send. + +Example: **CURL_DBG_SOCK_WPARTIAL=80** means a send with 1000 bytes would +only send 800. + +## CURL_DBG_QUIC_WBLOCK + +The percentage of send() calls that should be answered with EAGAIN at random. +QUIC only. + +## CURL_DEBUG + +Trace logging behavior as an alternative to calling curl_global_trace(3). + +Example: **CURL_DEBUG=http/2** means trace details about HTTP/2 handling. + +## CURL_DEBUG_SIZE + +Fake the size returned by CURLINFO_HEADER_SIZE and CURLINFO_REQUEST_SIZE. + +## CURL_GETHOSTNAME + +Fake the local machine's unqualified hostname for NTLM and SMTP. + +## CURL_HSTS_HTTP + +Bypass the HSTS HTTPS protocol restriction if this variable exists. + +## CURL_FORCETIME + +A time of 0 is used for AWS signatures and NTLM if this variable exists. + +## CURL_ENTROPY + +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_SMALLREQSEND + +An alternative size of HTTP data to be sent at a time only if smaller than the +current. + +## CURL_SMALLSENDS + +An alternative size of socket data to be sent at a time only if smaller than +the current. + +## CURL_TIME + +Fake unix timestamp to use for AltSvc, HSTS and CURLINFO variables that are +time related. + +This variable can also be used to fake the data returned by some CURLINFO +variables that are not time-related (such as CURLINFO_LOCAL_PORT), and in that +case the value is not a timestamp. + +## CURL_TRACE + +LDAP tracing is enabled if this variable exists and its value is 1 or greater. + +OpenLDAP tracing is separate. Refer to CURL_OPENLDAP_TRACE. + +## CURL_NTLM_WB_FILE + +Debug-version of the *ntlm-wb* executable. + +## CURL_OPENLDAP_TRACE + +OpenLDAP tracing is enabled if this variable exists and its value is 1 or +greater. There is a number of debug levels, refer to *openldap.c* comments. |