<testcase>
<info>
<keywords>
HTTP
HTTP GET
cookies
shared cookies
</keywords>
</info>

# Server-side
<reply>
<data1>
HTTP/1.1 200 OK
Date: Thu, 09 Nov 2010 14:49:00 GMT
Server: test-server/fake
Content-Type: text/html
Set-Cookie: test1=one; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
Set-Cookie: test2=two; domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
Set-Cookie: test3=three; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
Content-Length: 29

run 1: set cookie 1, 2 and 3
</data1>
<data2>
HTTP/1.1 200 OK
Date: Thu, 09 Nov 2010 14:49:01 GMT
Server: test-server/fake
Content-Type: text/html
Set-Cookie: test4=four; domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
Set-Cookie: test5=five; domain=host.foo.com; expires=Sat Feb 2 11:56:27 GMT 2030
Content-Length: 26

run 2: set cookie 4 and 5
</data2>
<data3>
HTTP/1.1 200 OK
Date: Thu, 09 Nov 2010 14:49:02 GMT
Server: test-server/fake
Content-Type: text/html
Funny-head: yesyes
Set-Cookie: test4=overwritten4; domain=host.foo.com; expires=Sat May 5 GMT 11:56:27 2035
Set-Cookie: test1=overwritten1; domain=foo.com; expires=Thu Mar 3 GMT 11:56:27 2033
Content-Type: text/html
Content-Length: 32

run 3: overwrite cookie 1 and 4
</data3>
</reply>

# Client-side
<client>
<server>
http
</server>
<name>
HTTP with shared cookie list (and dns cache)
</name>
# Explicitly set the time zone to a known good one, in case the user is
# using one of the 'right' zones that take into account leap seconds
# which causes the cookie expiry times to be different.
<setenv>
TZ=GMT
</setenv>
<tool>
lib506
</tool>
<command>
http://%HOSTIP:%HTTPPORT/506
</command>
</client>

# Verify data after the test has been "shot"
<verify>
<stdout mode="text">
GLOBAL_INIT
SHARE_INIT
CURLSHOPT_LOCKFUNC
CURLSHOPT_UNLOCKFUNC
CURLSHOPT_USERDATA
CURL_LOCK_DATA_COOKIE
CURL_LOCK_DATA_DNS
*** run 1
CURLOPT_SHARE
lock:   share  [Pigs in space]: 0
unlock: share  [Pigs in space]: 1
PERFORM
lock:   dns    [Pigs in space]: 2
unlock: dns    [Pigs in space]: 3
lock:   dns    [Pigs in space]: 4
unlock: dns    [Pigs in space]: 5
lock:   cookie [Pigs in space]: 6
unlock: cookie [Pigs in space]: 7
lock:   cookie [Pigs in space]: 8
unlock: cookie [Pigs in space]: 9
lock:   cookie [Pigs in space]: 10
unlock: cookie [Pigs in space]: 11
lock:   cookie [Pigs in space]: 12
unlock: cookie [Pigs in space]: 13
run 1: set cookie 1, 2 and 3
lock:   dns    [Pigs in space]: 14
unlock: dns    [Pigs in space]: 15
CLEANUP
lock:   dns    [Pigs in space]: 16
unlock: dns    [Pigs in space]: 17
lock:   cookie [Pigs in space]: 18
unlock: cookie [Pigs in space]: 19
lock:   share  [Pigs in space]: 20
unlock: share  [Pigs in space]: 21
*** run 2
CURLOPT_SHARE
lock:   share  [Pigs in space]: 22
unlock: share  [Pigs in space]: 23
PERFORM
lock:   dns    [Pigs in space]: 24
unlock: dns    [Pigs in space]: 25
lock:   cookie [Pigs in space]: 26
unlock: cookie [Pigs in space]: 27
lock:   cookie [Pigs in space]: 28
unlock: cookie [Pigs in space]: 29
lock:   cookie [Pigs in space]: 30
unlock: cookie [Pigs in space]: 31
run 2: set cookie 4 and 5
lock:   dns    [Pigs in space]: 32
unlock: dns    [Pigs in space]: 33
CLEANUP
lock:   dns    [Pigs in space]: 34
unlock: dns    [Pigs in space]: 35
lock:   cookie [Pigs in space]: 36
unlock: cookie [Pigs in space]: 37
lock:   share  [Pigs in space]: 38
unlock: share  [Pigs in space]: 39
*** run 3
CURLOPT_SHARE
lock:   share  [Pigs in space]: 40
unlock: share  [Pigs in space]: 41
CURLOPT_COOKIEJAR
PERFORM
lock:   dns    [Pigs in space]: 42
unlock: dns    [Pigs in space]: 43
lock:   cookie [Pigs in space]: 44
unlock: cookie [Pigs in space]: 45
lock:   cookie [Pigs in space]: 46
unlock: cookie [Pigs in space]: 47
lock:   cookie [Pigs in space]: 48
unlock: cookie [Pigs in space]: 49
run 3: overwrite cookie 1 and 4
lock:   dns    [Pigs in space]: 50
unlock: dns    [Pigs in space]: 51
try SHARE_CLEANUP...
lock:   share  [Pigs in space]: 52
unlock: share  [Pigs in space]: 53
SHARE_CLEANUP failed, correct
CLEANUP
lock:   dns    [Pigs in space]: 54
unlock: dns    [Pigs in space]: 55
lock:   cookie [Pigs in space]: 56
unlock: cookie [Pigs in space]: 57
lock:   share  [Pigs in space]: 58
unlock: share  [Pigs in space]: 59
SHARE_CLEANUP
lock:   share  [Pigs in space]: 60
unlock: share  [Pigs in space]: 61
GLOBAL_CLEANUP
</stdout>
<stderr>
http://%HOSTIP:%HTTPPORT/506 
</stderr>
<file name="log/jar506" mode="text">
# Netscape HTTP Cookie File
# http://curl.haxx.se/rfc/cookie_spec.html
# This file was generated by libcurl! Edit at your own risk.

.foo.com	TRUE	/	FALSE	1993463787	test1	overwritten1
.host.foo.com	TRUE	/	FALSE	1896263787	test2	two
.foo.com	TRUE	/	FALSE	1896263787	test3	three
.host.foo.com	TRUE	/	FALSE	2061978987	test4	overwritten4
.host.foo.com	TRUE	/	FALSE	1896263787	test5	five
</file>
</verify>
</testcase>
