| OLD | NEW | 
|---|
| 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 "content/browser/site_instance_impl.h" | 5 #include "content/browser/site_instance_impl.h" | 
| 6 | 6 | 
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" | 
| 8 #include "content/browser/browsing_instance.h" | 8 #include "content/browser/browsing_instance.h" | 
| 9 #include "content/browser/child_process_security_policy_impl.h" | 9 #include "content/browser/child_process_security_policy_impl.h" | 
| 10 #include "content/browser/renderer_host/render_process_host_impl.h" | 10 #include "content/browser/renderer_host/render_process_host_impl.h" | 
| (...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 258     return true; | 258     return true; | 
| 259 | 259 | 
| 260   // If either URL is invalid, they aren't part of the same site. | 260   // If either URL is invalid, they aren't part of the same site. | 
| 261   if (!url1.is_valid() || !url2.is_valid()) | 261   if (!url1.is_valid() || !url2.is_valid()) | 
| 262     return false; | 262     return false; | 
| 263 | 263 | 
| 264   // If the schemes differ, they aren't part of the same site. | 264   // If the schemes differ, they aren't part of the same site. | 
| 265   if (url1.scheme() != url2.scheme()) | 265   if (url1.scheme() != url2.scheme()) | 
| 266     return false; | 266     return false; | 
| 267 | 267 | 
| 268   return net::RegistryControlledDomainService::SameDomainOrHost(url1, url2); | 268   return net::registry_controlled_domains::SameDomainOrHost( | 
|  | 269       url1, | 
|  | 270       url2, | 
|  | 271       net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES); | 
| 269 } | 272 } | 
| 270 | 273 | 
| 271 /*static*/ | 274 /*static*/ | 
| 272 GURL SiteInstance::GetSiteForURL(BrowserContext* browser_context, | 275 GURL SiteInstance::GetSiteForURL(BrowserContext* browser_context, | 
| 273                                  const GURL& real_url) { | 276                                  const GURL& real_url) { | 
| 274   // TODO(fsamuel, creis): For some reason appID is not recognized as a host. | 277   // TODO(fsamuel, creis): For some reason appID is not recognized as a host. | 
| 275   if (real_url.SchemeIs(chrome::kGuestScheme)) | 278   if (real_url.SchemeIs(chrome::kGuestScheme)) | 
| 276     return real_url; | 279     return real_url; | 
| 277 | 280 | 
| 278   GURL url = SiteInstanceImpl::GetEffectiveURL(browser_context, real_url); | 281   GURL url = SiteInstanceImpl::GetEffectiveURL(browser_context, real_url); | 
| (...skipping 12 matching lines...) Expand all  Loading... | 
| 291 | 294 | 
| 292     // Remove port, if any. | 295     // Remove port, if any. | 
| 293     if (site.has_port()) { | 296     if (site.has_port()) { | 
| 294       GURL::Replacements rep; | 297       GURL::Replacements rep; | 
| 295       rep.ClearPort(); | 298       rep.ClearPort(); | 
| 296       site = site.ReplaceComponents(rep); | 299       site = site.ReplaceComponents(rep); | 
| 297     } | 300     } | 
| 298 | 301 | 
| 299     // If this URL has a registered domain, we only want to remember that part. | 302     // If this URL has a registered domain, we only want to remember that part. | 
| 300     std::string domain = | 303     std::string domain = | 
| 301         net::RegistryControlledDomainService::GetDomainAndRegistry(url); | 304         net::registry_controlled_domains::GetDomainAndRegistry( | 
|  | 305             url, | 
|  | 306             net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES); | 
| 302     if (!domain.empty()) { | 307     if (!domain.empty()) { | 
| 303       GURL::Replacements rep; | 308       GURL::Replacements rep; | 
| 304       rep.SetHostStr(domain); | 309       rep.SetHostStr(domain); | 
| 305       site = site.ReplaceComponents(rep); | 310       site = site.ReplaceComponents(rep); | 
| 306     } | 311     } | 
| 307   } | 312   } | 
| 308   return site; | 313   return site; | 
| 309 } | 314 } | 
| 310 | 315 | 
| 311 /*static*/ | 316 /*static*/ | 
| (...skipping 18 matching lines...) Expand all  Loading... | 
| 330   const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 335   const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 
| 331   if (command_line.HasSwitch(switches::kEnableStrictSiteIsolation) || | 336   if (command_line.HasSwitch(switches::kEnableStrictSiteIsolation) || | 
| 332       command_line.HasSwitch(switches::kSitePerProcess)) { | 337       command_line.HasSwitch(switches::kSitePerProcess)) { | 
| 333     ChildProcessSecurityPolicyImpl* policy = | 338     ChildProcessSecurityPolicyImpl* policy = | 
| 334         ChildProcessSecurityPolicyImpl::GetInstance(); | 339         ChildProcessSecurityPolicyImpl::GetInstance(); | 
| 335     policy->LockToOrigin(process_->GetID(), site_); | 340     policy->LockToOrigin(process_->GetID(), site_); | 
| 336   } | 341   } | 
| 337 } | 342 } | 
| 338 | 343 | 
| 339 }  // namespace content | 344 }  // namespace content | 
| OLD | NEW | 
|---|