/
githubmirror
/
curl
Обзор
Документация
Войти
/
githubmirror
/
curl
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
tests/data/test506
256 строк
7 KB
Stefan Eissing
cf-dns: connection filter for DNS queries
30 мар 2026, 14:28
Не верифицирован
30 мар 2026, 14:28
335dc0e
Код
Авторство
О чём код?
<?xml version="1.0" encoding="US-ASCII"?> <testcase> <info> <keywords> HTTP HTTP GET cookies shared cookies </keywords> </info> # Server-side <reply> <data1> HTTP/1.1 200 OK Date: Tue, 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: Tue, 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: Tue, 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 Set-Cookie: test6=six; domain=.www.host.foo.com; expires=Thu Mar 3 GMT 11:56:27 2033 Set-Cookie: test6=six_more; expires=Thu Mar 3 GMT 11:56:27 2033 Content-Type: text/html Content-Length: 73 run 3: overwrite cookie 1 and 4, set cookie 6 with and without tailmatch </data3> </reply> # Client-side <client> <server> http </server> # do not run this with the threaded-resolver or c-ares since the events might # trigger in a different order! <features> !threaded-resolver !c-ares </features> <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> lib%TESTNUMBER </tool> <command> http://%HOSTIP:%HTTPPORT/%TESTNUMBER %LOGDIR/jar%TESTNUMBER </command> </client> # Verify data after the test has been "shot" <verify> <stdout> GLOBAL_INIT SHARE_INIT CURLSHOPT_LOCKFUNC CURLSHOPT_UNLOCKFUNC CURLSHOPT_USERDATA CURL_LOCK_DATA_COOKIE CURL_LOCK_DATA_DNS CURLOPT_SHARE lock: share [Pigs in space]: 0 unlock: share [Pigs in space]: 1 CURLOPT_COOKIELIST injected_and_clobbered lock: cookie [Pigs in space]: 0 unlock: cookie [Pigs in space]: 1 CURLOPT_COOKIELIST ALL lock: cookie [Pigs in space]: 2 unlock: cookie [Pigs in space]: 3 CURLOPT_COOKIELIST session lock: cookie [Pigs in space]: 4 unlock: cookie [Pigs in space]: 5 CURLOPT_COOKIELIST injected lock: cookie [Pigs in space]: 6 unlock: cookie [Pigs in space]: 7 CURLOPT_COOKIELIST SESS lock: cookie [Pigs in space]: 8 unlock: cookie [Pigs in space]: 9 CLEANUP lock: cookie [Pigs in space]: 10 unlock: cookie [Pigs in space]: 11 lock: share [Pigs in space]: 2 unlock: share [Pigs in space]: 3 *** run 1 CURLOPT_SHARE lock: share [Pigs in space]: 4 unlock: share [Pigs in space]: 5 PERFORM lock: cookie [Pigs in space]: 12 unlock: cookie [Pigs in space]: 13 lock: cookie [Pigs in space]: 14 unlock: cookie [Pigs in space]: 15 lock: dns [Pigs in space]: 0 unlock: dns [Pigs in space]: 1 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]: 16 unlock: cookie [Pigs in space]: 17 lock: cookie [Pigs in space]: 18 unlock: cookie [Pigs in space]: 19 lock: cookie [Pigs in space]: 20 unlock: cookie [Pigs in space]: 21 lock: cookie [Pigs in space]: 22 unlock: cookie [Pigs in space]: 23 run 1: set cookie 1, 2 and 3 lock: dns [Pigs in space]: 6 unlock: dns [Pigs in space]: 7 CLEANUP lock: cookie [Pigs in space]: 24 unlock: cookie [Pigs in space]: 25 lock: share [Pigs in space]: 6 unlock: share [Pigs in space]: 7 *** run 2 CURLOPT_SHARE lock: share [Pigs in space]: 8 unlock: share [Pigs in space]: 9 PERFORM 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: dns [Pigs in space]: 8 unlock: dns [Pigs in space]: 9 lock: dns [Pigs in space]: 10 unlock: dns [Pigs in space]: 11 lock: cookie [Pigs in space]: 30 unlock: cookie [Pigs in space]: 31 lock: cookie [Pigs in space]: 32 unlock: cookie [Pigs in space]: 33 lock: cookie [Pigs in space]: 34 unlock: cookie [Pigs in space]: 35 run 2: set cookie 4 and 5 lock: dns [Pigs in space]: 12 unlock: dns [Pigs in space]: 13 CLEANUP lock: cookie [Pigs in space]: 36 unlock: cookie [Pigs in space]: 37 lock: share [Pigs in space]: 10 unlock: share [Pigs in space]: 11 *** run 3 CURLOPT_SHARE lock: share [Pigs in space]: 12 unlock: share [Pigs in space]: 13 CURLOPT_COOKIEJAR CURLOPT_COOKIELIST FLUSH lock: cookie [Pigs in space]: 38 unlock: cookie [Pigs in space]: 39 PERFORM lock: cookie [Pigs in space]: 40 unlock: cookie [Pigs in space]: 41 lock: dns [Pigs in space]: 14 unlock: dns [Pigs in space]: 15 lock: dns [Pigs in space]: 16 unlock: dns [Pigs in space]: 17 lock: cookie [Pigs in space]: 42 unlock: cookie [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 lock: cookie [Pigs in space]: 50 unlock: cookie [Pigs in space]: 51 run 3: overwrite cookie 1 and 4, set cookie 6 with and without tailmatch lock: dns [Pigs in space]: 18 unlock: dns [Pigs in space]: 19 CLEANUP lock: cookie [Pigs in space]: 52 unlock: cookie [Pigs in space]: 53 lock: share [Pigs in space]: 14 unlock: share [Pigs in space]: 15 CURLOPT_SHARE lock: share [Pigs in space]: 16 unlock: share [Pigs in space]: 17 CURLOPT_COOKIELIST ALL lock: cookie [Pigs in space]: 54 unlock: cookie [Pigs in space]: 55 CURLOPT_COOKIEJAR CURLOPT_COOKIELIST RELOAD lock: cookie [Pigs in space]: 56 unlock: cookie [Pigs in space]: 57 lock: cookie [Pigs in space]: 58 unlock: cookie [Pigs in space]: 59 loaded cookies: ----------------- www.host.foo.com FALSE / FALSE %days[400] test6 six_more .www.host.foo.com TRUE / FALSE %days[400] test6 six .host.foo.com TRUE / FALSE %days[400] test5 five .host.foo.com TRUE / FALSE %days[400] test4 overwritten4 .foo.com TRUE / FALSE %days[400] test3 three .host.foo.com TRUE / FALSE %days[400] test2 two .foo.com TRUE / FALSE %days[400] test1 overwritten1 .host.foo.com TRUE / FALSE %days[400] injected yes ----------------- try SHARE_CLEANUP... SHARE_CLEANUP failed, correct CLEANUP lock: cookie [Pigs in space]: 60 unlock: cookie [Pigs in space]: 61 lock: share [Pigs in space]: 18 unlock: share [Pigs in space]: 19 SHARE_CLEANUP lock: share [Pigs in space]: 20 unlock: share [Pigs in space]: 21 GLOBAL_CLEANUP </stdout> <file name="%LOGDIR/jar%TESTNUMBER" mode="text"> # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This file was generated by libcurl! Edit at your own risk. www.host.foo.com FALSE / FALSE %days[400] test6 six_more .www.host.foo.com TRUE / FALSE %days[400] test6 six .host.foo.com TRUE / FALSE %days[400] test5 five .host.foo.com TRUE / FALSE %days[400] test4 overwritten4 .foo.com TRUE / FALSE %days[400] test3 three .host.foo.com TRUE / FALSE %days[400] test2 two .foo.com TRUE / FALSE %days[400] test1 overwritten1 .host.foo.com TRUE / FALSE %days[400] injected yes </file> </verify> </testcase>