Loading CHANGES +8 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,14 @@ Changelog Daniel (21 December 2004) - Added test case 217 that verified CURLINFO_HTTP_CONNECTCODE, and I made the -w option support 'http_connect' to make it easier to verify! - Fixed lib/select.c include order to build fine on FreeBSD - Fixed failf()'s reuse of the va_list variable that crashed on FreeBSD. Version 7.12.3 (20 December 2004) Daniel (19 December 2004) Loading docs/curl.1 +4 −0 Original line number Diff line number Diff line Loading @@ -931,6 +931,10 @@ to follow location: headers. .B http_code The numerical code that was found in the last retrieved HTTP(S) page. .TP .B http_connect The numerical code that was found in the last response (from a proxy) to a curl CONNECT request. (Added in 7.12.4) .TP .B time_total The total time, in seconds, that the full operation lasted. The time will be displayed with millisecond resolution. Loading src/writeout.c +8 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ typedef enum { VAR_SPEED_DOWNLOAD, VAR_SPEED_UPLOAD, VAR_HTTP_CODE, VAR_HTTP_CODE_PROXY, VAR_HEADER_SIZE, VAR_REQUEST_SIZE, VAR_EFFECTIVE_URL, Loading @@ -71,6 +72,7 @@ struct variable { static const struct variable replacements[]={ {"url_effective", VAR_EFFECTIVE_URL}, {"http_code", VAR_HTTP_CODE}, {"http_connect", VAR_HTTP_CODE_PROXY}, {"time_total", VAR_TOTAL_TIME}, {"time_namelookup", VAR_NAMELOOKUP_TIME}, {"time_connect", VAR_CONNECT_TIME}, Loading Loading @@ -127,6 +129,12 @@ void ourWriteOut(CURL *curl, char *writeinfo) curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &longinfo)) fprintf(stream, "%03ld", longinfo); break; case VAR_HTTP_CODE_PROXY: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_HTTP_CONNECTCODE, &longinfo)) fprintf(stream, "%03ld", longinfo); break; case VAR_HEADER_SIZE: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_HEADER_SIZE, &longinfo)) Loading tests/data/Makefile.am +1 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \ test193 test194 test195 test196 test197 test198 test515 test516 \ test517 test518 test210 test211 test212 test220 test221 test222 \ test223 test224 test206 test207 test208 test209 test213 test240 \ test241 test242 test519 test214 test215 test216 test241 test242 test519 test214 test215 test216 test217 # The following tests have been removed from the dist since they no longer # work. We need to fix the test suite's FTPS server first, then bring them Loading tests/data/test217 0 → 100644 +44 −0 Original line number Diff line number Diff line # Server-side <reply> # this is returned first since we get no proxy-auth <data nocheck=1> HTTP/1.1 405 Method Not Allowed swsclose And you should ignore this data. </data> </reply> # Client-side <client> <server> http </server> <name> HTTP proxy CONNECT to proxy returning 405 </name> <command> http://test.remote.server.com:217/path/2170002 --proxy http://%HOSTIP:%HTTPPORT --proxytunnel -w '%{http_code} %{http_connect}\n' </command> </test> # Verify data after the test has been "shot" <verify> <strip> ^User-Agent: curl/.* </strip> <protocol> CONNECT test.remote.server.com:217 HTTP/1.0 </protocol> # CURLE_RECV_ERROR <errorcode> 56 </errorcode> <stdout> HTTP/1.1 405 Method Not Allowed swsclose 000 405 </stdout> </verify> Loading
CHANGES +8 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,14 @@ Changelog Daniel (21 December 2004) - Added test case 217 that verified CURLINFO_HTTP_CONNECTCODE, and I made the -w option support 'http_connect' to make it easier to verify! - Fixed lib/select.c include order to build fine on FreeBSD - Fixed failf()'s reuse of the va_list variable that crashed on FreeBSD. Version 7.12.3 (20 December 2004) Daniel (19 December 2004) Loading
docs/curl.1 +4 −0 Original line number Diff line number Diff line Loading @@ -931,6 +931,10 @@ to follow location: headers. .B http_code The numerical code that was found in the last retrieved HTTP(S) page. .TP .B http_connect The numerical code that was found in the last response (from a proxy) to a curl CONNECT request. (Added in 7.12.4) .TP .B time_total The total time, in seconds, that the full operation lasted. The time will be displayed with millisecond resolution. Loading
src/writeout.c +8 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ typedef enum { VAR_SPEED_DOWNLOAD, VAR_SPEED_UPLOAD, VAR_HTTP_CODE, VAR_HTTP_CODE_PROXY, VAR_HEADER_SIZE, VAR_REQUEST_SIZE, VAR_EFFECTIVE_URL, Loading @@ -71,6 +72,7 @@ struct variable { static const struct variable replacements[]={ {"url_effective", VAR_EFFECTIVE_URL}, {"http_code", VAR_HTTP_CODE}, {"http_connect", VAR_HTTP_CODE_PROXY}, {"time_total", VAR_TOTAL_TIME}, {"time_namelookup", VAR_NAMELOOKUP_TIME}, {"time_connect", VAR_CONNECT_TIME}, Loading Loading @@ -127,6 +129,12 @@ void ourWriteOut(CURL *curl, char *writeinfo) curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &longinfo)) fprintf(stream, "%03ld", longinfo); break; case VAR_HTTP_CODE_PROXY: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_HTTP_CONNECTCODE, &longinfo)) fprintf(stream, "%03ld", longinfo); break; case VAR_HEADER_SIZE: if(CURLE_OK == curl_easy_getinfo(curl, CURLINFO_HEADER_SIZE, &longinfo)) Loading
tests/data/Makefile.am +1 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \ test193 test194 test195 test196 test197 test198 test515 test516 \ test517 test518 test210 test211 test212 test220 test221 test222 \ test223 test224 test206 test207 test208 test209 test213 test240 \ test241 test242 test519 test214 test215 test216 test241 test242 test519 test214 test215 test216 test217 # The following tests have been removed from the dist since they no longer # work. We need to fix the test suite's FTPS server first, then bring them Loading
tests/data/test217 0 → 100644 +44 −0 Original line number Diff line number Diff line # Server-side <reply> # this is returned first since we get no proxy-auth <data nocheck=1> HTTP/1.1 405 Method Not Allowed swsclose And you should ignore this data. </data> </reply> # Client-side <client> <server> http </server> <name> HTTP proxy CONNECT to proxy returning 405 </name> <command> http://test.remote.server.com:217/path/2170002 --proxy http://%HOSTIP:%HTTPPORT --proxytunnel -w '%{http_code} %{http_connect}\n' </command> </test> # Verify data after the test has been "shot" <verify> <strip> ^User-Agent: curl/.* </strip> <protocol> CONNECT test.remote.server.com:217 HTTP/1.0 </protocol> # CURLE_RECV_ERROR <errorcode> 56 </errorcode> <stdout> HTTP/1.1 405 Method Not Allowed swsclose 000 405 </stdout> </verify>