Commit 4ba1eb26 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

Added test case 217 that verified CURLINFO_HTTP_CONNECTCODE, and I made the

-w option support 'http_connect' to make it easier to verify!
parent 444f6427
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -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)
+4 −0
Original line number Diff line number Diff line
@@ -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.
+8 −0
Original line number Diff line number Diff line
@@ -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,
@@ -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},
@@ -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))
+1 −1
Original line number Diff line number Diff line
@@ -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

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>