CURLOPT_RANGE (3) - Linux Manuals
CURLOPT_RANGE: set byte range to request
NAME
CURLOPT_RANGE - set byte range to requestSYNOPSIS
#include <curl/curl.h>CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RANGE, char *range);
DESCRIPTION
Pass a char * as parameter, which should contain the specified range you want to retrieve. It should be in the format "X-Y", where either X or Y may be left out and X and Y are byte indexes.HTTP transfers also support several intervals, separated with commas as in "X-Y,N-M". Using this kind of multiple intervals will cause the HTTP server to send the response document in pieces (using standard MIME separation techniques). For RTSP, the formatting of a range should follow RFC2326 Section 12.29. For RTSP, byte ranges are not permitted. Instead, ranges should be given in npt, utc, or smpte formats.
Pass a NULL to this option to disable the use of ranges.
DEFAULT
NULLPROTOCOLS
HTTP, FTP, FILE, RTSP and SFTP.EXAMPLE
CURL *curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "http://example.com"); /* get the first 200 bytes */ curl_easy_setopt(curl, CURLOPT_RANGE, "0-199"); /* Perform the request */ curl_easy_perform(curl); }