1--- 2c: Copyright (C) Daniel Stenberg, <daniel.se>, et al. 3SPDX-License-Identifier: curl 4Title: CURLINFO_CONTENT_LENGTH_DOWNLOAD 5Section: 3 6Source: libcurl 7See-also: 8 - CURLINFO_CONTENT_LENGTH_UPLOAD (3) 9 - curl_easy_getinfo (3) 10 - curl_easy_setopt (3) 11--- 12 13# NAME 14 15CURLINFO_CONTENT_LENGTH_DOWNLOAD - get content-length of download 16 17# SYNOPSIS 18 19~~~c 20#include <curl/curl.h> 21 22CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_CONTENT_LENGTH_DOWNLOAD, 23 double *content_length); 24~~~ 25 26# DESCRIPTION 27 28Pass a pointer to a double to receive the content-length of the download. This 29is the value read from the Content-Length: field. Since 7.19.4, this returns 30-1 if the size is not known. 31 32CURLINFO_CONTENT_LENGTH_DOWNLOAD_T(3) is a newer replacement that returns a more 33sensible variable type. 34 35# PROTOCOLS 36 37HTTP(S) 38 39# EXAMPLE 40 41~~~c 42int main(void) 43{ 44 CURL *curl = curl_easy_init(); 45 if(curl) { 46 CURLcode res; 47 curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); 48 49 /* Perform the request */ 50 res = curl_easy_perform(curl); 51 52 if(!res) { 53 /* check the size */ 54 double cl; 55 res = curl_easy_getinfo(curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD, &cl); 56 if(!res) { 57 printf("Size: %.0f\n", cl); 58 } 59 } 60 } 61} 62~~~ 63 64# AVAILABILITY 65 66Added in 7.6.1. Deprecated since 7.55.0. 67 68# RETURN VALUE 69 70Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. 71