DOKK / manpages / debian 11 / libcurl4-doc / CURLINFO_SIZE_DOWNLOAD.3.en
CURLINFO_SIZE_DOWNLOAD(3) curl_easy_getinfo options CURLINFO_SIZE_DOWNLOAD(3)

CURLINFO_SIZE_DOWNLOAD - get the number of downloaded bytes

#include <curl/curl.h>

CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_SIZE_DOWNLOAD, double *dlp);

Pass a pointer to a double to receive the total amount of bytes that were downloaded. The amount is only for the latest transfer and will be reset again for each new transfer. This counts actual payload data, what's also commonly called body. All meta and header data are excluded and will not be counted in this number.

CURLINFO_SIZE_DOWNLOAD_T(3) is a newer replacement that returns a more sensible variable type.

All

CURL *curl = curl_easy_init();
if(curl) {

curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
/* Perform the request */
res = curl_easy_perform(curl);
if(!res) {
/* check the size */
double dl;
res = curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD, &dl);
if(!res) {
printf("Downloaded %.0f bytes\n", cl);
}
} }

Added in 7.4.1

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

curl_easy_getinfo(3), curl_easy_setopt(3), CURLINFO_SIZE_DOWNLOAD_T(3), CURLINFO_SIZE_UPLOAD_T(3),

November 4, 2020 libcurl 7.74.0