• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1---
2c: Copyright (C) Daniel Stenberg, <daniel.se>, et al.
3SPDX-License-Identifier: curl
4Title: CURLMOPT_PIPELINING_SERVER_BL
5Section: 3
6Source: libcurl
7See-also:
8  - CURLMOPT_PIPELINING (3)
9  - CURLMOPT_PIPELINING_SITE_BL (3)
10---
11
12# NAME
13
14CURLMOPT_PIPELINING_SERVER_BL - pipelining server block list
15
16# SYNOPSIS
17
18~~~c
19#include <curl/curl.h>
20
21CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING_SERVER_BL,
22                            char **servers);
23~~~
24
25# DESCRIPTION
26
27No function since pipelining was removed in 7.62.0.
28
29Pass a **servers** array of char *, ending with a NULL entry. This is a list
30of server types prefixes (in the Server: HTTP header) that are blocked from
31pipelining, i.e server types that are known to not support HTTP
32pipelining. The array is copied by libcurl.
33
34Note that the comparison matches if the Server: header begins with the string
35in the block list, i.e "Server: Ninja 1.2.3" and "Server: Ninja 1.4.0" can
36both be blocked by having "Ninja" in the list.
37
38Pass a NULL pointer to clear the block list.
39
40# DEFAULT
41
42The default value is NULL, which means that there is no block list.
43
44# PROTOCOLS
45
46# EXAMPLE
47
48~~~c
49static char *server_block_list[] =
50{
51  "Microsoft-IIS/6.0",
52  "nginx/0.8.54",
53  NULL
54};
55int main(void)
56{
57  CURLM *m = curl_multi_init();
58  curl_multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_block_list);
59}
60~~~
61
62# AVAILABILITY
63
64Added in 7.30.0
65
66# RETURN VALUE
67
68Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
69