mirror of
https://github.com/moparisthebest/curl
synced 2024-12-24 00:58:48 -05:00
e2ef8d6fa1
According to RFC6265 section 5.4, cookies with equal path lengths SHOULD be sorted by creation-time (earlier first). This adds a creation-time record to the cookie struct in order to make cookie sorting more deterministic. The creation-time is defined as the order of the cookies in the jar, the first cookie read fro the jar being the oldest. The creation-time is thus not serialized into the jar. Also remove the strcmp() matching in the sorting as there is no lexicographic ordering in RFC6265. Existing tests are updated to match. Closes #2524
64 lines
1.1 KiB
Plaintext
64 lines
1.1 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP GET
|
|
HTTP proxy
|
|
cookies
|
|
</keywords>
|
|
</info>
|
|
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 200 OK
|
|
Server: Microsoft-IIS/4.0
|
|
Date: Tue, 25 Sep 2001 19:37:44 GMT
|
|
Content-Type: text/html
|
|
Connection: close
|
|
Content-Length: 21
|
|
|
|
This server says moo
|
|
</data>
|
|
</reply>
|
|
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
</server>
|
|
<name>
|
|
HTTP cookie domains tailmatching the host name
|
|
</name>
|
|
<command>
|
|
http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/injar1216 -x %HOSTIP:%HTTPPORT
|
|
</command>
|
|
<file name="log/injar1216">
|
|
example.fake FALSE /a FALSE 2139150993 mooo indeed
|
|
example.fake FALSE /b FALSE 0 moo1 indeed
|
|
example.fake FALSE /c FALSE 2139150993 moo2 indeed
|
|
example.fake TRUE /c FALSE 2139150993 moo3 indeed
|
|
</file>
|
|
</client>
|
|
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<protocol>
|
|
GET http://example.fake/c/1216 HTTP/1.1
|
|
Host: example.fake
|
|
Accept: */*
|
|
Proxy-Connection: Keep-Alive
|
|
Cookie: moo3=indeed; moo2=indeed
|
|
|
|
GET http://bexample.fake/c/1216 HTTP/1.1
|
|
Host: bexample.fake
|
|
Accept: */*
|
|
Proxy-Connection: Keep-Alive
|
|
|
|
</protocol>
|
|
</verify>
|
|
</testcase>
|