mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
If a HTTP request is Basic and num is already >=1000, the HTTP test server
adds 1 to num to get the data section to return. This allows testing authentication negotiations using the Basic authentication method.
This commit is contained in:
parent
3b0c5ae467
commit
640974fb28
@ -67,6 +67,13 @@ of [test case number]%10000.
|
||||
B) The request was HTTP and included digest details, which adds 1000 to NUM
|
||||
C) If a HTTP request is NTLM type-1, it adds 1001 to num
|
||||
D) If a HTTP request is NTLM type-3, it adds 1002 to num
|
||||
E) If a HTTP request is Basic and num is already >=1000, it adds 1 to num
|
||||
|
||||
Dynamically changing num in this way allows the test harness to be used to
|
||||
test authentication negotiation where several different requests must be sent
|
||||
to complete a transfer. The response to each request is found in its own data
|
||||
section. Validating the entire negotiation sequence can be done by
|
||||
specifying a datacheck section.
|
||||
</dataNUM>
|
||||
<datacheck [nonewline="yes"]>
|
||||
if the data is sent but this is what should be checked afterwards. If
|
||||
|
@ -442,6 +442,13 @@ static int ProcessRequest(struct httprequest *req)
|
||||
req->ntlm = TRUE; /* NTLM found */
|
||||
logmsg("Received NTLM type-1, sending back data %ld", req->partno);
|
||||
}
|
||||
else if((req->partno >= 1000) && strstr(req->reqbuf, "Authorization: Basic")) {
|
||||
/* If the client is passing this Basic-header and the part number is already
|
||||
>=1000, we add 1 to the part number. This allows simple Basic authentication
|
||||
negotiation to work in the test suite. */
|
||||
req->partno += 1;
|
||||
logmsg("Received Basic request, sending back data %ld", req->partno);
|
||||
}
|
||||
if(strstr(req->reqbuf, "Connection: close"))
|
||||
req->open = FALSE; /* close connection after this request */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user