1---
2c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
3SPDX-License-Identifier: curl
4Title: CURLINFO_REQUEST_SIZE
5Section: 3
6Source: libcurl
7See-also:
8  - CURLINFO_HEADER_SIZE (3)
9  - CURLINFO_SIZE_DOWNLOAD_T (3)
10  - curl_easy_getinfo (3)
11  - curl_easy_setopt (3)
12Protocol:
13  - All
14Added-in: 7.4.1
15---
16
17# NAME
18
19CURLINFO_REQUEST_SIZE - get size of sent request
20
21# SYNOPSIS
22
23~~~c
24#include <curl/curl.h>
25
26CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_REQUEST_SIZE, long *sizep);
27~~~
28
29# DESCRIPTION
30
31Pass a pointer to a long to receive the total size of the issued
32requests. This is so far only for HTTP requests. Note that this may be more
33than one request if CURLOPT_FOLLOWLOCATION(3) is enabled.
34
35# %PROTOCOLS%
36
37# EXAMPLE
38
39~~~c
40int main(void)
41{
42  CURL *curl = curl_easy_init();
43  if(curl) {
44    CURLcode res;
45    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
46    res = curl_easy_perform(curl);
47    if(res == CURLE_OK) {
48      long req;
49      res = curl_easy_getinfo(curl, CURLINFO_REQUEST_SIZE, &req);
50      if(!res)
51        printf("Request size: %ld bytes\n", req);
52    }
53    curl_easy_cleanup(curl);
54  }
55}
56~~~
57
58# %AVAILABILITY%
59
60# RETURN VALUE
61
62Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
63