Loading docs/curl.1 +9 −0 Original line number Diff line number Diff line Loading @@ -938,6 +938,12 @@ 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_redirect The time, in seconds, it took for all redirection steps include name lookup, connect, pretransfer and transfer before final transaction was started. time_redirect shows the complete execution time for multiple redirections. (Added in 7.12.3) .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 Loading Loading @@ -966,6 +972,9 @@ The Content-Type of the requested document, if there was any. (Added in 7.9.5) .TP .B num_connects Number of new connects made in the recent transfer. (Added in 7.12.3) .TP .B num_redirects Number of redirects that were followed in the request. (Added in 7.12.3) .RE If this option is used several times, the last one will be used. Loading src/writeout.c +14 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,8 @@ typedef enum { VAR_EFFECTIVE_URL, VAR_CONTENT_TYPE, VAR_NUM_CONNECTS, VAR_REDIRECT_TIME, VAR_REDIRECT_COUNT, VAR_NUM_OF_VARS /* must be the last */ } replaceid; Loading @@ -82,6 +84,8 @@ static struct variable replacements[]={ {"speed_upload", VAR_SPEED_UPLOAD}, {"content_type", VAR_CONTENT_TYPE}, {"num_connects", VAR_NUM_CONNECTS}, {"time_redirect", VAR_REDIRECT_TIME}, {"num_redirects", VAR_REDIRECT_COUNT}, {NULL, VAR_NONE} }; Loading Loading @@ -138,6 +142,16 @@ void ourWriteOut(CURL *curl, char *writeinfo) curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &longinfo)) fprintf(stream, "%ld", longinfo); break; case VAR_REDIRECT_COUNT: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_REDIRECT_COUNT, &longinfo)) fprintf(stream, "%ld", longinfo); break; case VAR_REDIRECT_TIME: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_REDIRECT_TIME, &doubleinfo)) fprintf(stream, "%.3f", doubleinfo); break; case VAR_TOTAL_TIME: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &doubleinfo)) Loading Loading
docs/curl.1 +9 −0 Original line number Diff line number Diff line Loading @@ -938,6 +938,12 @@ 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_redirect The time, in seconds, it took for all redirection steps include name lookup, connect, pretransfer and transfer before final transaction was started. time_redirect shows the complete execution time for multiple redirections. (Added in 7.12.3) .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 Loading Loading @@ -966,6 +972,9 @@ The Content-Type of the requested document, if there was any. (Added in 7.9.5) .TP .B num_connects Number of new connects made in the recent transfer. (Added in 7.12.3) .TP .B num_redirects Number of redirects that were followed in the request. (Added in 7.12.3) .RE If this option is used several times, the last one will be used. Loading
src/writeout.c +14 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,8 @@ typedef enum { VAR_EFFECTIVE_URL, VAR_CONTENT_TYPE, VAR_NUM_CONNECTS, VAR_REDIRECT_TIME, VAR_REDIRECT_COUNT, VAR_NUM_OF_VARS /* must be the last */ } replaceid; Loading @@ -82,6 +84,8 @@ static struct variable replacements[]={ {"speed_upload", VAR_SPEED_UPLOAD}, {"content_type", VAR_CONTENT_TYPE}, {"num_connects", VAR_NUM_CONNECTS}, {"time_redirect", VAR_REDIRECT_TIME}, {"num_redirects", VAR_REDIRECT_COUNT}, {NULL, VAR_NONE} }; Loading Loading @@ -138,6 +142,16 @@ void ourWriteOut(CURL *curl, char *writeinfo) curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &longinfo)) fprintf(stream, "%ld", longinfo); break; case VAR_REDIRECT_COUNT: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_REDIRECT_COUNT, &longinfo)) fprintf(stream, "%ld", longinfo); break; case VAR_REDIRECT_TIME: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_REDIRECT_TIME, &doubleinfo)) fprintf(stream, "%.3f", doubleinfo); break; case VAR_TOTAL_TIME: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &doubleinfo)) Loading