summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorcorvid <corvid@lavabit.com>2010-03-22 17:30:34 +0000
committercorvid <corvid@lavabit.com>2010-03-22 17:30:34 +0000
commiteecb359024409cf7110bef25a35e958db3cc1acb (patch)
tree28c8539b440d2f762015a9a6452969c96c6c8b06 /test
parente86dd0113bb24d5a9e1f584a716342fd5a964937 (diff)
cookies use host-only as in draft spec
Behaviour should be quite similar to before, but it'll be easier for someone else to understand if it matches the spec's way of doing things more closely.
Diffstat (limited to 'test')
-rw-r--r--test/cookies.c37
1 files changed, 34 insertions, 3 deletions
diff --git a/test/cookies.c b/test/cookies.c
index 0d8d3db1..d3ff7ae6 100644
--- a/test/cookies.c
+++ b/test/cookies.c
@@ -832,17 +832,41 @@ int main()
expect(__LINE__, "Cookie: name=val\r\n", "http", "dotdomain.org", "/");
expect(__LINE__, "Cookie: name=val\r\n", "http", "www.dotdomain.org", "/");
+ /* HOST_ONLY */
+ a_Cookies_set("name=val; domain=.hostonly.org", "hostonly.org", "/", NULL);
+ a_Cookies_set("name2=val2", "hostonly.org", "/", NULL);
+ a_Cookies_set("name3=val3; domain=hostonly.org", "hostonly.org", "/", NULL);
+ expect(__LINE__, "Cookie: name=val; name2=val2; name3=val3\r\n", "http",
+ "hostonly.org", "/");
+ a_Cookies_set("name=new; domain=.hostonly.org", "hostonly.org", "/", NULL);
+ expect(__LINE__, "Cookie: name=new; name2=val2; name3=val3\r\n", "http",
+ "hostonly.org", "/");
+ a_Cookies_set("name2=new2", "hostonly.org", "/", NULL);
+ expect(__LINE__, "Cookie: name=new; name2=new2; name3=val3\r\n", "http",
+ "hostonly.org", "/");
+ a_Cookies_set("name3=new3; domain=hostonly.org", "hostonly.org", "/", NULL);
+ expect(__LINE__, "Cookie: name=new; name2=new2; name3=new3\r\n", "http",
+ "hostonly.org", "/");
+
/* SUBDOMAIN */
a_Cookies_set("name=val; domain=www.subdomain.com", "subdomain.com", "/",
NULL);
+ a_Cookies_set("name=val; domain=.www.subdomain.com", "subdomain.com", "/",
+ NULL);
expect(__LINE__, "", "http", "subdomain.com", "/");
expect(__LINE__, "", "http", "www.subdomain.com", "/");
/* SUPERDOMAIN(?) */
- a_Cookies_set("name=val; domain=supdomain.com", "www.supdomain.com", "/",
+ a_Cookies_set("name=val; domain=.supdomain.com", "www.supdomain.com", "/",
NULL);
- expect(__LINE__, "Cookie: name=val\r\n", "http", "www.supdomain.com", "/");
- expect(__LINE__, "Cookie: name=val\r\n", "http", "supdomain.com", "/");
+ a_Cookies_set("name2=val2; domain=supdomain.com", "www.supdomain.com", "/",
+ NULL);
+ expect(__LINE__, "Cookie: name=val; name2=val2\r\n", "http",
+ "sub2.sub.supdomain.com", "/");
+ expect(__LINE__, "Cookie: name=val; name2=val2\r\n", "http",
+ "www.supdomain.com", "/");
+ expect(__LINE__, "Cookie: name=val; name2=val2\r\n", "http",
+ "supdomain.com", "/");
/* UNRELATED */
a_Cookies_set("name=val; domain=another.com", "unrelated.com", "/", NULL);
@@ -857,6 +881,13 @@ int main()
a_Cookies_set("name=val; domain=another.com", "verybadguys.com", "/", NULL);
expect(__LINE__, "", "http", "another.com", "/");
+ a_Cookies_set("name=val; domain=similar.com", "imilar.com", "/", NULL);
+ a_Cookies_set("name2=val2; domain=similar.com", "ssimilar.com", "/", NULL);
+ a_Cookies_set("name3=val3; domain=.similar.com", "imilar.com", "/", NULL);
+ a_Cookies_set("name4=val4; domain=.similar.com", "timilar.com", "/", NULL);
+ a_Cookies_set("name4=val4; domain=.similar.com", "tiimilar.com", "/", NULL);
+ expect(__LINE__, "", "http", "similar.com", "/");
+
/* SECURE */
a_Cookies_set("name=val; secure", "secure.com", "/", NULL);
expect(__LINE__, "", "http", "secure.com", "/");