Added test case 1051 to test Location: following with PUT, as reported
by Ben Sutcliffe. The test when run manually shows a problem in curl, but the test harness web server doesn't run the test correctly so it's disabled for now.
This commit is contained in:
5
CHANGES
5
CHANGES
@@ -10,6 +10,11 @@ Daniel Fandrich (29 Jul 2008)
|
|||||||
- Fixed --use-ascii to properly convert text files on Symbian OS, MS-DOS
|
- Fixed --use-ascii to properly convert text files on Symbian OS, MS-DOS
|
||||||
and OS/2.
|
and OS/2.
|
||||||
|
|
||||||
|
- Added test case 1051 to test Location: following with PUT, as reported
|
||||||
|
by Ben Sutcliffe. The test when run manually shows a problem in curl,
|
||||||
|
but the test harness web server doesn't run the test correctly so it's
|
||||||
|
disabled for now.
|
||||||
|
|
||||||
Daniel Fandrich (28 Jul 2008)
|
Daniel Fandrich (28 Jul 2008)
|
||||||
- Fixed display of the interface bind address in the trace output when it's
|
- Fixed display of the interface bind address in the trace output when it's
|
||||||
an IPv6 address.
|
an IPv6 address.
|
||||||
|
|||||||
@@ -4,3 +4,4 @@
|
|||||||
# per line.
|
# per line.
|
||||||
# Lines starting with '#' letters are treated as comments.
|
# Lines starting with '#' letters are treated as comments.
|
||||||
1041
|
1041
|
||||||
|
1051
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \
|
|||||||
test556 test1031 test628 test629 test630 test631 test632 test1032 \
|
test556 test1031 test628 test629 test630 test631 test632 test1032 \
|
||||||
test1033 test539 test1034 test1035 test1036 test1037 test1038 test1039 \
|
test1033 test539 test1034 test1035 test1036 test1037 test1038 test1039 \
|
||||||
test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 \
|
test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 \
|
||||||
test1048 test1049 test1050
|
test1048 test1049 test1050 test1051
|
||||||
|
|
||||||
filecheck:
|
filecheck:
|
||||||
@mkdir test-place; \
|
@mkdir test-place; \
|
||||||
|
|||||||
103
tests/data/test1051
Normal file
103
tests/data/test1051
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
<testcase>
|
||||||
|
<info>
|
||||||
|
<keywords>
|
||||||
|
HTTP
|
||||||
|
HTTP PUT
|
||||||
|
followlocation
|
||||||
|
</keywords>
|
||||||
|
|
||||||
|
</info>
|
||||||
|
# Server-side
|
||||||
|
<reply>
|
||||||
|
<data>
|
||||||
|
HTTP/1.1 301 Redirect swsclose
|
||||||
|
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||||
|
Server: test-server/fake
|
||||||
|
Location: data/10510002.txt?coolsite=yes
|
||||||
|
Content-Length: 0
|
||||||
|
Connection: close
|
||||||
|
|
||||||
|
</data>
|
||||||
|
<data2>
|
||||||
|
HTTP/1.1 100 Continue
|
||||||
|
|
||||||
|
HTTP/1.1 200 Followed here fine swsclose
|
||||||
|
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||||
|
Server: test-server/fake
|
||||||
|
Content-Length: 51
|
||||||
|
|
||||||
|
If this is received, the location following worked
|
||||||
|
</data2>
|
||||||
|
<datacheck>
|
||||||
|
HTTP/1.1 301 Redirect
|
||||||
|
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||||
|
Server: test-server/fake
|
||||||
|
Location: data/10510002.txt?coolsite=yes
|
||||||
|
Content-Length: 0
|
||||||
|
Connection: Keep-Alive
|
||||||
|
|
||||||
|
HTTP/1.1 100 Continue
|
||||||
|
|
||||||
|
HTTP/1.1 200 Followed here fine swsclose
|
||||||
|
Date: Thu, 29 Jul 2008 14:49:00 GMT
|
||||||
|
Server: test-server/fake
|
||||||
|
Content-Length: 51
|
||||||
|
|
||||||
|
If this is received, the location following worked
|
||||||
|
</datacheck>
|
||||||
|
</reply>
|
||||||
|
|
||||||
|
# Client-side
|
||||||
|
<client>
|
||||||
|
<server>
|
||||||
|
http
|
||||||
|
</server>
|
||||||
|
<name>
|
||||||
|
HTTP PUT with Location: following
|
||||||
|
</name>
|
||||||
|
<command>
|
||||||
|
http://%HOSTIP:%HTTPPORT/want/1051 -L -T log/test1051.txt
|
||||||
|
</command>
|
||||||
|
<file name="log/test1051.txt">
|
||||||
|
Weird
|
||||||
|
file
|
||||||
|
to
|
||||||
|
upload
|
||||||
|
for
|
||||||
|
testing
|
||||||
|
the
|
||||||
|
PUT
|
||||||
|
feature
|
||||||
|
</file>
|
||||||
|
</client>
|
||||||
|
|
||||||
|
# Verify data after the test has been "shot"
|
||||||
|
<verify>
|
||||||
|
<strip>
|
||||||
|
^User-Agent:.*
|
||||||
|
</strip>
|
||||||
|
<protocol>
|
||||||
|
PUT /want/1051 HTTP/1.1
|
||||||
|
Host: %HOSTIP:%HTTPPORT
|
||||||
|
Accept: */*
|
||||||
|
Content-Length: 78
|
||||||
|
Expect: 100-continue
|
||||||
|
|
||||||
|
PUT /want/data/10510002.txt?coolsite=yes HTTP/1.1
|
||||||
|
Host: %HOSTIP:%HTTPPORT
|
||||||
|
Accept: */*
|
||||||
|
Content-Length: 78
|
||||||
|
Expect: 100-continue
|
||||||
|
|
||||||
|
Weird
|
||||||
|
file
|
||||||
|
to
|
||||||
|
upload
|
||||||
|
for
|
||||||
|
testing
|
||||||
|
the
|
||||||
|
PUT
|
||||||
|
feature
|
||||||
|
</protocol>
|
||||||
|
</verify>
|
||||||
|
</testcase>
|
||||||
@@ -351,7 +351,7 @@ int ProcessRequest(struct httprequest *req)
|
|||||||
headers, for the pipelining case mostly */
|
headers, for the pipelining case mostly */
|
||||||
req->checkindex += (end - line) + strlen(END_OF_HEADERS);
|
req->checkindex += (end - line) + strlen(END_OF_HEADERS);
|
||||||
|
|
||||||
/* **** Persistancy ****
|
/* **** Persistency ****
|
||||||
*
|
*
|
||||||
* If the request is a HTTP/1.0 one, we close the connection unconditionally
|
* If the request is a HTTP/1.0 one, we close the connection unconditionally
|
||||||
* when we're done.
|
* when we're done.
|
||||||
@@ -539,7 +539,7 @@ static int get_request(curl_socket_t sock, struct httprequest *req)
|
|||||||
pipereq_length = req->offset - req->checkindex;
|
pipereq_length = req->offset - req->checkindex;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*** Init the httpreqest structure properly for the upcoming request ***/
|
/*** Init the httprequest structure properly for the upcoming request ***/
|
||||||
|
|
||||||
req->checkindex = 0;
|
req->checkindex = 0;
|
||||||
req->offset = 0;
|
req->offset = 0;
|
||||||
@@ -1049,7 +1049,7 @@ int main(int argc, char *argv[])
|
|||||||
send_doc(msgsock, &req);
|
send_doc(msgsock, &req);
|
||||||
|
|
||||||
if((req.testno < 0) && (req.testno != DOCNUMBER_CONNECT)) {
|
if((req.testno < 0) && (req.testno != DOCNUMBER_CONNECT)) {
|
||||||
logmsg("special request received, no persistancy");
|
logmsg("special request received, no persistency");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if(!req.open) {
|
if(!req.open) {
|
||||||
|
|||||||
Reference in New Issue
Block a user