CURLOPT_HEADER - pass headers to the data stream
#include <curl/curl.h> CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADER, long onoff);
CURLOPT_HEADER(3) curl_easy_setopt options CURLOPT_HEADER(3)
NAME
CURLOPT_HEADER - pass headers to the data stream
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADER, long onoff);
DESCRIPTION
Pass the long value onoff set to 1 to ask libcurl to include the head-
ers in the write callback (CURLOPT_WRITEFUNCTION(3)). This option is
relevant for protocols that actually have headers or other meta-data
(like HTTP and FTP).
When asking to get the headers passed to the same callback as the body,
it is not possible to accurately separate them again without detailed
knowledge about the protocol in use.
Further: the CURLOPT_WRITEFUNCTION(3) callback is limited to only ever
get a maximum of CURL_MAX_WRITE_SIZE bytes passed to it (16KB), while a
header can be longer and the CURLOPT_HEADERFUNCTION(3) supports getting
called with headers up to CURL_MAX_HTTP_HEADER bytes big (100KB).
It is often better to use CURLOPT_HEADERFUNCTION(3) to get the header
data separately.
While named confusingly similar, CURLOPT_HTTPHEADER(3) is used to set
custom HTTP headers!
DEFAULT
0
PROTOCOLS
Most
EXAMPLE
CURL *curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
curl_easy_perform(curl);
}
AVAILABILITY
Provided in all libcurl versions.
RETURN VALUE
Returns CURLE_OK.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------+
|Availability | web/curl |
+---------------+------------------+
|Stability | Uncommitted |
+---------------+------------------+
SEE ALSO
CURLOPT_HEADERFUNCTION(3), CURLOPT_HTTPHEADER(3),
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from https://curl.se/down-
load/curl-7.83.1.tar.bz2.
Further information about this software can be found on the open source
community website at http://curl.haxx.se/.
libcurl 7.83.1 November 26, 2021 CURLOPT_HEADER(3)