diff --git a/include/curl/curl.h b/include/curl/curl.h index b038834da3f157501243919203961d6b0037f618..4e90bfe2c37be1371a98e8f31397236174808fae 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -676,7 +676,10 @@ typedef enum { CURLINFO_SSL_VERIFYRESULT = CURLINFO_LONG + 13, CURLINFO_FILETIME = CURLINFO_LONG + 14, - CURLINFO_LASTONE = 15 + CURLINFO_CONTENT_LENGTH_DOWNLOAD = CURLINFO_DOUBLE + 15, + CURLINFO_CONTENT_LENGTH_UPLOAD = CURLINFO_DOUBLE + 16, + + CURLINFO_LASTONE = 17 } CURLINFO; /* diff --git a/lib/getinfo.c b/lib/getinfo.c index 140736294f907a0b18985aee603b3aa87c4e2ab3..400087183db912d146e4ec02c31b605a599b2b98 100644 --- a/lib/getinfo.c +++ b/lib/getinfo.c @@ -103,6 +103,12 @@ CURLcode curl_getinfo(CURL *curl, CURLINFO info, ...) case CURLINFO_SSL_VERIFYRESULT: *param_longp = data->ssl.certverifyresult; break; + case CURLINFO_CONTENT_LENGTH_DOWNLOAD: + *param_doublep = data->progress.size_dl; + break; + case CURLINFO_CONTENT_LENGTH_UPLOAD: + *param_doublep = data->progress.size_ul; + break; default: return CURLE_BAD_FUNCTION_ARGUMENT; }