CURLOPT_MAXFILESIZE(3)

CURLOPT_MAXFILESIZE3

Maximum file size allowed to download

Usage

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

Overview

Pass a long as parameter. This specifies the maximum accepted size (in bytes) of a file to download. If the file requested is found larger than this value, the transfer is aborted and CURLE_FILESIZE_EXCEEDED is returned.

The file size is not always known prior to the download start, and for such transfers this option has no effect - even if the file transfer eventually ends up being larger than this given limit.

If you want a limit above 2GB, use CURLOPT_MAXFILESIZE_LARGE(3).

Since 8.4.0, this option also stops ongoing transfers if they reach this threshold.

Default

None

Protocols

FTP, HTTP and MQTT

Examples

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    CURLcode ret;
    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
    /* refuse to download if larger than 1000 bytes! */
    curl_easy_setopt(curl, CURLOPT_MAXFILESIZE, 1000L);
    ret = curl_easy_perform(curl);
  }
}

Return value

Returns CURLE_OK

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

Always

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