Loading docs/curl.1 +5 −0 Original line number Diff line number Diff line Loading @@ -569,6 +569,11 @@ The time, in seconds, it took from the start until the file transfer is just about to begin. This includes all pre-transfer commands and negotiations that are specific to the particular protocol(s) involved. .TP .B time_starttransfer The time, in seconds, it took from the start until the first byte is just about to be transfered. This includes time_pretransfer and also the time the server needs to calculate the result. .TP .B size_download The total amount of bytes that were downloaded. .TP Loading docs/curl_easy_getinfo.3 +6 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,12 @@ start until the file transfer is just about to begin. This includes all pre-transfer commands and negotiations that are specific to the particular protocol(s) involved. .TP .B CURLINFO_STARTTRANSFER_TIME Pass a pointer to a double to receive the time, in seconds, it took from the start until the first byte is just about to be transfered. This includes CURLINFO_PRETRANSFER_TIME and also the time the server needs to calculate the result. .TP .B CURLINFO_SIZE_UPLOAD Pass a pointer to a double to receive the total amount of bytes that were uploaded. Loading include/curl/curl.h +5 −3 Original line number Diff line number Diff line Loading @@ -584,8 +584,8 @@ CURLcode curl_global_init(long flags); void curl_global_cleanup(void); /* This is the version number */ #define LIBCURL_VERSION "7.9.1" #define LIBCURL_VERSION_NUM 0x070901 #define LIBCURL_VERSION "7.9.2-pre3" #define LIBCURL_VERSION_NUM 0x070902 /* linked-list structure for the CURLOPT_QUOTE option (and other) */ struct curl_slist { Loading Loading @@ -635,7 +635,9 @@ typedef enum { CURLINFO_CONTENT_LENGTH_DOWNLOAD = CURLINFO_DOUBLE + 15, CURLINFO_CONTENT_LENGTH_UPLOAD = CURLINFO_DOUBLE + 16, CURLINFO_LASTONE = 17 CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17, CURLINFO_LASTONE = 18 } CURLINFO; /* unfortunately, the easy.h include file needs the options and info stuff Loading lib/getinfo.c +4 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ CURLcode Curl_initinfo(struct SessionHandle *data) pro->t_nslookup = 0; pro->t_connect = 0; pro->t_pretransfer = 0; pro->t_starttransfer = 0; info->httpcode = 0; info->httpversion=0; Loading Loading @@ -107,6 +108,9 @@ CURLcode Curl_getinfo(struct SessionHandle *data, CURLINFO info, ...) case CURLINFO_PRETRANSFER_TIME: *param_doublep = data->progress.t_pretransfer; break; case CURLINFO_STARTTRANSFER_TIME: *param_doublep = data->progress.t_starttransfer; break; case CURLINFO_SIZE_UPLOAD: *param_doublep = data->progress.uploaded; break; Loading lib/progress.c +9 −7 Original line number Diff line number Diff line Loading @@ -111,22 +111,24 @@ void Curl_pgrsTime(struct SessionHandle *data, timerid timer) /* mistake filter */ break; case TIMER_STARTSINGLE: /* This is set at the start of a single fetch, there may be several fetches within an operation, why we add all other times relative to this one */ /* This is set at the start of a single fetch */ data->progress.t_startsingle = Curl_tvnow(); break; case TIMER_NAMELOOKUP: data->progress.t_nslookup += data->progress.t_nslookup = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_CONNECT: data->progress.t_connect += data->progress.t_connect = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_PRETRANSFER: data->progress.t_pretransfer += data->progress.t_pretransfer = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_STARTTRANSFER: data->progress.t_starttransfer = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_POSTRANSFER: Loading Loading @@ -227,7 +229,7 @@ int Curl_pgrsUpdate(struct connectdata *conn) /* The exact time spent so far (from the start) */ timespent = (double)Curl_tvdiff (now, data->progress.start)/1000; data->progress.timespent = (long)timespent; data->progress.timespent = timespent; /* The average download speed this far */ data->progress.dlspeed = Loading Loading
docs/curl.1 +5 −0 Original line number Diff line number Diff line Loading @@ -569,6 +569,11 @@ The time, in seconds, it took from the start until the file transfer is just about to begin. This includes all pre-transfer commands and negotiations that are specific to the particular protocol(s) involved. .TP .B time_starttransfer The time, in seconds, it took from the start until the first byte is just about to be transfered. This includes time_pretransfer and also the time the server needs to calculate the result. .TP .B size_download The total amount of bytes that were downloaded. .TP Loading
docs/curl_easy_getinfo.3 +6 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,12 @@ start until the file transfer is just about to begin. This includes all pre-transfer commands and negotiations that are specific to the particular protocol(s) involved. .TP .B CURLINFO_STARTTRANSFER_TIME Pass a pointer to a double to receive the time, in seconds, it took from the start until the first byte is just about to be transfered. This includes CURLINFO_PRETRANSFER_TIME and also the time the server needs to calculate the result. .TP .B CURLINFO_SIZE_UPLOAD Pass a pointer to a double to receive the total amount of bytes that were uploaded. Loading
include/curl/curl.h +5 −3 Original line number Diff line number Diff line Loading @@ -584,8 +584,8 @@ CURLcode curl_global_init(long flags); void curl_global_cleanup(void); /* This is the version number */ #define LIBCURL_VERSION "7.9.1" #define LIBCURL_VERSION_NUM 0x070901 #define LIBCURL_VERSION "7.9.2-pre3" #define LIBCURL_VERSION_NUM 0x070902 /* linked-list structure for the CURLOPT_QUOTE option (and other) */ struct curl_slist { Loading Loading @@ -635,7 +635,9 @@ typedef enum { CURLINFO_CONTENT_LENGTH_DOWNLOAD = CURLINFO_DOUBLE + 15, CURLINFO_CONTENT_LENGTH_UPLOAD = CURLINFO_DOUBLE + 16, CURLINFO_LASTONE = 17 CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17, CURLINFO_LASTONE = 18 } CURLINFO; /* unfortunately, the easy.h include file needs the options and info stuff Loading
lib/getinfo.c +4 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ CURLcode Curl_initinfo(struct SessionHandle *data) pro->t_nslookup = 0; pro->t_connect = 0; pro->t_pretransfer = 0; pro->t_starttransfer = 0; info->httpcode = 0; info->httpversion=0; Loading Loading @@ -107,6 +108,9 @@ CURLcode Curl_getinfo(struct SessionHandle *data, CURLINFO info, ...) case CURLINFO_PRETRANSFER_TIME: *param_doublep = data->progress.t_pretransfer; break; case CURLINFO_STARTTRANSFER_TIME: *param_doublep = data->progress.t_starttransfer; break; case CURLINFO_SIZE_UPLOAD: *param_doublep = data->progress.uploaded; break; Loading
lib/progress.c +9 −7 Original line number Diff line number Diff line Loading @@ -111,22 +111,24 @@ void Curl_pgrsTime(struct SessionHandle *data, timerid timer) /* mistake filter */ break; case TIMER_STARTSINGLE: /* This is set at the start of a single fetch, there may be several fetches within an operation, why we add all other times relative to this one */ /* This is set at the start of a single fetch */ data->progress.t_startsingle = Curl_tvnow(); break; case TIMER_NAMELOOKUP: data->progress.t_nslookup += data->progress.t_nslookup = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_CONNECT: data->progress.t_connect += data->progress.t_connect = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_PRETRANSFER: data->progress.t_pretransfer += data->progress.t_pretransfer = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_STARTTRANSFER: data->progress.t_starttransfer = (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0; break; case TIMER_POSTRANSFER: Loading Loading @@ -227,7 +229,7 @@ int Curl_pgrsUpdate(struct connectdata *conn) /* The exact time spent so far (from the start) */ timespent = (double)Curl_tvdiff (now, data->progress.start)/1000; data->progress.timespent = (long)timespent; data->progress.timespent = timespent; /* The average download speed this far */ data->progress.dlspeed = Loading