1*6236dae4SAndroid Build Coastguard Worker--- 2*6236dae4SAndroid Build Coastguard Workerc: Copyright (C) Daniel Stenberg, <[email protected]>, et al. 3*6236dae4SAndroid Build Coastguard WorkerSPDX-License-Identifier: curl 4*6236dae4SAndroid Build Coastguard WorkerTitle: CURLOPT_HAPROXYPROTOCOL 5*6236dae4SAndroid Build Coastguard WorkerSection: 3 6*6236dae4SAndroid Build Coastguard WorkerSource: libcurl 7*6236dae4SAndroid Build Coastguard WorkerSee-also: 8*6236dae4SAndroid Build Coastguard Worker - CURLOPT_PROXY (3) 9*6236dae4SAndroid Build Coastguard WorkerProtocol: 10*6236dae4SAndroid Build Coastguard Worker - All 11*6236dae4SAndroid Build Coastguard WorkerAdded-in: 7.60.0 12*6236dae4SAndroid Build Coastguard Worker--- 13*6236dae4SAndroid Build Coastguard Worker 14*6236dae4SAndroid Build Coastguard Worker# NAME 15*6236dae4SAndroid Build Coastguard Worker 16*6236dae4SAndroid Build Coastguard WorkerCURLOPT_HAPROXYPROTOCOL - send HAProxy PROXY protocol v1 header 17*6236dae4SAndroid Build Coastguard Worker 18*6236dae4SAndroid Build Coastguard Worker# SYNOPSIS 19*6236dae4SAndroid Build Coastguard Worker 20*6236dae4SAndroid Build Coastguard Worker~~~c 21*6236dae4SAndroid Build Coastguard Worker#include <curl/curl.h> 22*6236dae4SAndroid Build Coastguard Worker 23*6236dae4SAndroid Build Coastguard WorkerCURLcode curl_easy_setopt(CURL *handle, CURLOPT_HAPROXYPROTOCOL, 24*6236dae4SAndroid Build Coastguard Worker long haproxy_protocol); 25*6236dae4SAndroid Build Coastguard Worker~~~ 26*6236dae4SAndroid Build Coastguard Worker 27*6236dae4SAndroid Build Coastguard Worker# DESCRIPTION 28*6236dae4SAndroid Build Coastguard Worker 29*6236dae4SAndroid Build Coastguard WorkerA long parameter set to 1 tells the library to send an HAProxy PROXY 30*6236dae4SAndroid Build Coastguard Workerprotocol v1 header at beginning of the connection. The default action is not to 31*6236dae4SAndroid Build Coastguard Workersend this header. 32*6236dae4SAndroid Build Coastguard Worker 33*6236dae4SAndroid Build Coastguard WorkerThis option is primarily useful when sending test requests to a service that 34*6236dae4SAndroid Build Coastguard Workerexpects this header. 35*6236dae4SAndroid Build Coastguard Worker 36*6236dae4SAndroid Build Coastguard WorkerMost applications do not need this option. 37*6236dae4SAndroid Build Coastguard Worker 38*6236dae4SAndroid Build Coastguard Worker# DEFAULT 39*6236dae4SAndroid Build Coastguard Worker 40*6236dae4SAndroid Build Coastguard Worker0, do not send any HAProxy PROXY protocol header 41*6236dae4SAndroid Build Coastguard Worker 42*6236dae4SAndroid Build Coastguard Worker# %PROTOCOLS% 43*6236dae4SAndroid Build Coastguard Worker 44*6236dae4SAndroid Build Coastguard Worker# EXAMPLE 45*6236dae4SAndroid Build Coastguard Worker 46*6236dae4SAndroid Build Coastguard Worker~~~c 47*6236dae4SAndroid Build Coastguard Workerint main(void) 48*6236dae4SAndroid Build Coastguard Worker{ 49*6236dae4SAndroid Build Coastguard Worker CURL *curl = curl_easy_init(); 50*6236dae4SAndroid Build Coastguard Worker if(curl) { 51*6236dae4SAndroid Build Coastguard Worker CURLcode ret; 52*6236dae4SAndroid Build Coastguard Worker curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/"); 53*6236dae4SAndroid Build Coastguard Worker curl_easy_setopt(curl, CURLOPT_HAPROXYPROTOCOL, 1L); 54*6236dae4SAndroid Build Coastguard Worker ret = curl_easy_perform(curl); 55*6236dae4SAndroid Build Coastguard Worker } 56*6236dae4SAndroid Build Coastguard Worker} 57*6236dae4SAndroid Build Coastguard Worker~~~ 58*6236dae4SAndroid Build Coastguard Worker 59*6236dae4SAndroid Build Coastguard Worker# %AVAILABILITY% 60*6236dae4SAndroid Build Coastguard Worker 61*6236dae4SAndroid Build Coastguard Worker# RETURN VALUE 62*6236dae4SAndroid Build Coastguard Worker 63*6236dae4SAndroid Build Coastguard WorkerReturns CURLE_OK if HTTP is enabled, and CURLE_UNKNOWN_OPTION if not. 64