mirror of
https://github.com/curl/curl.git
synced 2025-01-30 14:22:33 +08:00
b935fd4a07
The mandatory header now has a mandatory list of protocols for which the manpage is relevant. Most man pages already has a "PROTOCOLS" section, but this introduces a stricter way to specify the relevant protocols. cd2nroff verifies that at least one protocol is mentioned (which can be `*`). This information is not used just yet, but A) the PROTOCOLS section can now instead get generated and get a unified wording across all manpages and B) this allows us to more reliably filter/search for protocol specific manpages/options. Closes #13166
1.2 KiB
1.2 KiB
c: Copyright (C) Daniel Stenberg, daniel@haxx.se, et al.
SPDX-License-Identifier: curl
Title: CURLOPT_HAPROXY_CLIENT_IP
Section: 3
Source: libcurl
Protocol:
- *
See-also:
- CURLOPT_HAPROXYPROTOCOL (3)
- CURLOPT_PROXY (3)
NAME
CURLOPT_HAPROXY_CLIENT_IP - set HAProxy PROXY protocol client IP
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HAPROXY_CLIENT_IP,
char *client_ip);
DESCRIPTION
When this parameter is set to a valid IPv4 or IPv6 numerical address, the library sends this address as client address in the HAProxy PROXY protocol v1 header at beginning of the connection.
This option is an alternative to CURLOPT_HAPROXYPROTOCOL(3) as that one cannot use a specified address.
DEFAULT
NULL, no HAProxy header is sent
PROTOCOLS
HTTP, HAProxy PROTOCOL
EXAMPLE
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
CURLcode ret;
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
curl_easy_setopt(curl, CURLOPT_HAPROXY_CLIENT_IP, "1.1.1.1");
ret = curl_easy_perform(curl);
}
}
AVAILABILITY
Along with HTTP. Added in 8.2.0.
RETURN VALUE
Returns CURLE_OK if HTTP is enabled, and CURLE_UNKNOWN_OPTION if not.