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

FreeBSD Manual Pages

  
 
  

home | help
CURLOPT_TCP_NODELAY(3)	   Library Functions Manual	CURLOPT_TCP_NODELAY(3)

NAME
       CURLOPT_TCP_NODELAY - the TCP_NODELAY option

SYNOPSIS
       #include	<curl/curl.h>

       CURLcode	curl_easy_setopt(CURL *handle, CURLOPT_TCP_NODELAY, long nodelay);

DESCRIPTION
       Pass  a	long specifying	whether	the TCP_NODELAY	option is to be	set or
       cleared (1L = set, 0 = clear). The option is set	by default.  This  has
       no effect after the connection has been established.

       Setting	this  option to	1L disables the	Nagle algorithm	on connections
       created using this handle. The purpose of this algorithm	is to minimize
       the number of small packets on the network (where "small	packets" means
       TCP segments less than the Maximum Segment Size for the network).

       Maximizing the amount of	data sent per TCP segment is good  because  it
       amortizes  the  overhead	of the send. However, in some cases small seg-
       ments may need to be sent without delay.	This is	 less  efficient  than
       sending larger amounts of data at a time, and can contribute to conges-
       tion on the network if overdone.

DEFAULT
       1

PROTOCOLS
       This functionality affects tcp only

EXAMPLE
       int main(void)
       {
	 CURL *curl = curl_easy_init();
	 if(curl) {
	   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
	   /* leave Nagle enabled */
	   curl_easy_setopt(curl, CURLOPT_TCP_NODELAY, 0L);
	   curl_easy_perform(curl);
	 }
       }

HISTORY
       The default was changed to 1 from 0 in 7.50.2.

AVAILABILITY
       Added in	curl 7.11.2

RETURN VALUE
       curl_easy_setopt(3) returns a CURLcode indicating success or error.

       CURLE_OK	(0) means everything was OK, non-zero means an error occurred,
       see libcurl-errors(3).

SEE ALSO
       CURLOPT_BUFFERSIZE(3),	      CURLOPT_SOCKOPTFUNCTION(3),	  CUR-
       LOPT_TCP_KEEPALIVE(3)

libcurl				  2025-06-03		CURLOPT_TCP_NODELAY(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=CURLOPT_TCP_NODELAY&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help