Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(425)

Side by Side Diff: net/base/static_cookie_policy.cc

Issue 15140003: Add support for split Public Suffix List distinctions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased again Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/base/sdch_manager.cc ('k') | net/cookies/cookie_monster.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/base/static_cookie_policy.h" 5 #include "net/base/static_cookie_policy.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "googleurl/src/gurl.h" 8 #include "googleurl/src/gurl.h"
9 #include "net/base/net_errors.h" 9 #include "net/base/net_errors.h"
10 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" 10 #include "net/base/registry_controlled_domains/registry_controlled_domain.h"
11 11
12 namespace net { 12 namespace net {
13 13
14 int StaticCookiePolicy::CanGetCookies( 14 int StaticCookiePolicy::CanGetCookies(
15 const GURL& url, 15 const GURL& url,
16 const GURL& first_party_for_cookies) const { 16 const GURL& first_party_for_cookies) const {
17 switch (type_) { 17 switch (type_) {
18 case StaticCookiePolicy::ALLOW_ALL_COOKIES: 18 case StaticCookiePolicy::ALLOW_ALL_COOKIES:
19 case StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES: 19 case StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES:
20 return OK; 20 return OK;
21 case StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES: 21 case StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES:
22 if (first_party_for_cookies.is_empty()) 22 if (first_party_for_cookies.is_empty())
23 return OK; // Empty first-party URL indicates a first-party request. 23 return OK; // Empty first-party URL indicates a first-party request.
24 return RegistryControlledDomainService::SameDomainOrHost( 24 return registry_controlled_domains::SameDomainOrHost(
25 url, first_party_for_cookies) ? OK : ERR_ACCESS_DENIED; 25 url,
26 first_party_for_cookies,
27 registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES) ?
28 OK : ERR_ACCESS_DENIED;
26 case StaticCookiePolicy::BLOCK_ALL_COOKIES: 29 case StaticCookiePolicy::BLOCK_ALL_COOKIES:
27 return ERR_ACCESS_DENIED; 30 return ERR_ACCESS_DENIED;
28 default: 31 default:
29 NOTREACHED(); 32 NOTREACHED();
30 return ERR_ACCESS_DENIED; 33 return ERR_ACCESS_DENIED;
31 } 34 }
32 } 35 }
33 36
34 int StaticCookiePolicy::CanSetCookie( 37 int StaticCookiePolicy::CanSetCookie(
35 const GURL& url, 38 const GURL& url,
36 const GURL& first_party_for_cookies) const { 39 const GURL& first_party_for_cookies) const {
37 switch (type_) { 40 switch (type_) {
38 case StaticCookiePolicy::ALLOW_ALL_COOKIES: 41 case StaticCookiePolicy::ALLOW_ALL_COOKIES:
39 return OK; 42 return OK;
40 case StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES: 43 case StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES:
41 case StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES: 44 case StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES:
42 if (first_party_for_cookies.is_empty()) 45 if (first_party_for_cookies.is_empty())
43 return OK; // Empty first-party URL indicates a first-party request. 46 return OK; // Empty first-party URL indicates a first-party request.
44 return RegistryControlledDomainService::SameDomainOrHost( 47 return registry_controlled_domains::SameDomainOrHost(
45 url, first_party_for_cookies) ? OK : ERR_ACCESS_DENIED; 48 url,
49 first_party_for_cookies,
50 registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES) ?
51 OK : ERR_ACCESS_DENIED;
46 case StaticCookiePolicy::BLOCK_ALL_COOKIES: 52 case StaticCookiePolicy::BLOCK_ALL_COOKIES:
47 return ERR_ACCESS_DENIED; 53 return ERR_ACCESS_DENIED;
48 default: 54 default:
49 NOTREACHED(); 55 NOTREACHED();
50 return ERR_ACCESS_DENIED; 56 return ERR_ACCESS_DENIED;
51 } 57 }
52 } 58 }
53 59
54 } // namespace net 60 } // namespace net
OLDNEW
« no previous file with comments | « net/base/sdch_manager.cc ('k') | net/cookies/cookie_monster.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698