1
0
mirror of https://github.com/moparisthebest/curl synced 2024-11-10 11:35:07 -05:00

new -w variables supported

This commit is contained in:
Daniel Stenberg 2004-11-15 11:25:39 +00:00
parent ccc4c9c02c
commit 8475a0df2f
2 changed files with 23 additions and 0 deletions

View File

@ -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 about to begin. This includes all pre-transfer commands and negotiations that
are specific to the particular protocol(s) involved. are specific to the particular protocol(s) involved.
.TP .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 .B time_starttransfer
The time, in seconds, it took from the start until the first byte is just about 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 to be transfered. This includes time_pretransfer and also the time the
@ -966,6 +972,9 @@ The Content-Type of the requested document, if there was any. (Added in 7.9.5)
.TP .TP
.B num_connects .B num_connects
Number of new connects made in the recent transfer. (Added in 7.12.3) 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 .RE
If this option is used several times, the last one will be used. If this option is used several times, the last one will be used.

View File

@ -57,6 +57,8 @@ typedef enum {
VAR_EFFECTIVE_URL, VAR_EFFECTIVE_URL,
VAR_CONTENT_TYPE, VAR_CONTENT_TYPE,
VAR_NUM_CONNECTS, VAR_NUM_CONNECTS,
VAR_REDIRECT_TIME,
VAR_REDIRECT_COUNT,
VAR_NUM_OF_VARS /* must be the last */ VAR_NUM_OF_VARS /* must be the last */
} replaceid; } replaceid;
@ -82,6 +84,8 @@ static struct variable replacements[]={
{"speed_upload", VAR_SPEED_UPLOAD}, {"speed_upload", VAR_SPEED_UPLOAD},
{"content_type", VAR_CONTENT_TYPE}, {"content_type", VAR_CONTENT_TYPE},
{"num_connects", VAR_NUM_CONNECTS}, {"num_connects", VAR_NUM_CONNECTS},
{"time_redirect", VAR_REDIRECT_TIME},
{"num_redirects", VAR_REDIRECT_COUNT},
{NULL, VAR_NONE} {NULL, VAR_NONE}
}; };
@ -138,6 +142,16 @@ void ourWriteOut(CURL *curl, char *writeinfo)
curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &longinfo)) curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &longinfo))
fprintf(stream, "%ld", longinfo); fprintf(stream, "%ld", longinfo);
break; 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: case VAR_TOTAL_TIME:
if(CURLE_OK == if(CURLE_OK ==
curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &doubleinfo)) curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME, &doubleinfo))