Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
libcurl-env-dbg(3)	   Library Functions Manual	    libcurl-env-dbg(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,  sub-
       ject  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 an
	      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  lim-
	      ited to a	maximum	of 400 bytes.

       CURL_DBG_SOCK_WBLOCK
	      The  percentage  of send() calls that should be answered with an
	      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 EA-
	      GAIN 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 han-
	      dling.

	      In  the  curl command line tool, built with --enable-debug, this
	      environment variable adds	to arguments like --verbose, -vvv.  At
	      least  a	single -v is needed to make the	run emit trace output,
	      but when it does,	the contents of	CURL_DEBUG are added  and  can
	      override existing	options.

	      Example:	CURL_DEBUG=tcp,-http/2 curl -vv	url means trace	proto-
	      col details, triggered by	-vv, add tracing of  TCP  in  addition
	      and remove tracing of HTTP/2.

       CURL_DEBUG_SIZE
	      Fake  the	size returned by CURLINFO_HEADER_SIZE and CURLINFO_RE-
	      QUEST_SIZE.

       CURL_DNS_SERVER
	      When built with c-ares for name resolving, setting this environ-
	      ment variable to [IP:port] makes libcurl use that	DNS server in-
	      stead of the system default. This	 is  used  by  the  curl  test
	      suite.

       CURL_DNS_DELAY_MS
	      Delay the	DNS resolve by this many milliseconds. This is used in
	      the  test	suite to check proper handling of CURLOPT_CONNECTTIME-
	      OUT(3).

       CURL_FTP_PWD_STOP
	      When set,	the first transfer - when using	ftp: - returns	before
	      sending  the  PWD	command	and stop any further progress. This is
	      used to test an edge case

       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  ex-
	      ists.

       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 out-
	      puts 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	 vari-
	      ables 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	 time-
	      stamp.

       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_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.

       CURL_WS_CHUNK_SIZE
	      Used  to	influence the buffer chunk size	used for WebSocket en-
	      coding and decoding.

       CURL_WS_CHUNK_EAGAIN
	      Used to simulate blocking	sends after this chunk size  for  Web-
	      Socket connections.

       CURL_WS_FORCE_ZERO_MASK
	      Used  to	set  the bitmask of all	sent WebSocket frames to zero.
	      The value	of the environment variable does not matter.

       CURL_FORBID_REUSE
	      Used to set the CURLOPT_FORBID_REUSE flag	on each	transfer  ini-
	      tiated  by the curl command line tool. The value of the environ-
	      ment variable does not matter.

       CURL_GRACEFUL_SHUTDOWN
	      Make a blocking, graceful	shutdown of all	remaining  connections
	      when  a  multi handle is destroyed. This implicitly triggers for
	      easy handles that	are run	via easy_perform. The value of the en-
	      vironment	variable gives the shutdown timeout in milliseconds.

       CURL_H2_STREAM_WIN_MAX
	      Set to a positive	32-bit number to override  the	HTTP/2	stream
	      window's default of 10MB.	Used in	testing	to verify correct win-
	      dow update handling.

SEE ALSO
       libcurl-env(3)

libcurl				  2025-11-01		    libcurl-env-dbg(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=libcurl-env-dbg&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help