CURLOPT_HTTP_TRANSFER_DECODING(3)

CURLOPT_HTTP_TRANSFER_DECODING3

Http transfer decoding control

Usage

#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP_TRANSFER_DECODING,
                         long enabled);

Overview

Pass a long to tell libcurl how to act on transfer decoding. If set to zero, transfer decoding is disabled, if set to 1 it is enabled (default). libcurl does chunked transfer decoding by default unless this option is set to zero.

Default

1

Protocols

HTTP

Examples

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_HTTP_TRANSFER_DECODING, 0L);
    ret = curl_easy_perform(curl);
  }
}

Return value

Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.

Releases

79 releases since OS X 10.10; the text changed 13 times.

  1. 10.10–10.11.6
  2. 10.12–10.12.5
  3. 10.12.6–10.14.6
  4. 10.15–11.5
  5. 12.0.1–12.2
  6. 12.3–12.5
  7. 13.0
  8. 13.1
  9. 13.2
  10. 13.3
  11. 13.4
  12. 13.5–14.1
  13. 14.2–14.4
  14. 14.5–26.5

Availability

Added in 7.16.2 Does not work with the hyper backend (it always has transfer decoding enabled).

From curl 166.0.0.0.1 in macOS 26.5. Parsed by carta from the page's man source.