1---
2c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
3SPDX-License-Identifier: curl
4Title: CURLMOPT_MAX_PIPELINE_LENGTH
5Section: 3
6Source: libcurl
7See-also:
8  - CURLMOPT_MAX_HOST_CONNECTIONS (3)
9  - CURLMOPT_PIPELINING (3)
10Protocol:
11  - All
12---
13
14# NAME
15
16CURLMOPT_MAX_PIPELINE_LENGTH - maximum number of requests in a pipeline
17
18# SYNOPSIS
19
20~~~c
21#include <curl/curl.h>
22
23CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_PIPELINE_LENGTH,
24                            long max);
25~~~
26
27# DESCRIPTION
28
29No function since pipelining was removed in 7.62.0.
30
31Pass a long. The set **max** number is used as the maximum amount of
32outstanding requests in an HTTP/1.1 pipeline. This option is only used for
33HTTP/1.1 pipelining, not for HTTP/2 multiplexing.
34
35When this limit is reached, libcurl creates another connection to the same
36host (see CURLMOPT_MAX_HOST_CONNECTIONS(3)), or queue the request until one
37    of the pipelines to the host is ready to accept a request. Thus, the total
38number of requests in-flight is CURLMOPT_MAX_HOST_CONNECTIONS(3) *
39CURLMOPT_MAX_PIPELINE_LENGTH(3).
40
41# DEFAULT
42
435
44
45# EXAMPLE
46
47~~~c
48int main(void)
49{
50  CURLM *m = curl_multi_init();
51  /* set a more conservative pipe length */
52  curl_multi_setopt(m, CURLMOPT_MAX_PIPELINE_LENGTH, 3L);
53}
54~~~
55
56# AVAILABILITY
57
58Added in 7.30.0
59
60# RETURN VALUE
61
62Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
63