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 "chrome/renderer/chrome_content_renderer_client.h" | 5 #include "chrome/renderer/chrome_content_renderer_client.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
207 | 207 |
208 // chrome:, and chrome-extension: resources shouldn't trigger insecure | 208 // chrome:, and chrome-extension: resources shouldn't trigger insecure |
209 // content warnings. | 209 // content warnings. |
210 WebSecurityPolicy::registerURLSchemeAsSecure(chrome_ui_scheme); | 210 WebSecurityPolicy::registerURLSchemeAsSecure(chrome_ui_scheme); |
211 | 211 |
212 WebString extension_scheme(ASCIIToUTF16(chrome::kExtensionScheme)); | 212 WebString extension_scheme(ASCIIToUTF16(chrome::kExtensionScheme)); |
213 WebSecurityPolicy::registerURLSchemeAsSecure(extension_scheme); | 213 WebSecurityPolicy::registerURLSchemeAsSecure(extension_scheme); |
214 | 214 |
215 // chrome-extension: resources should be allowed to receive CORS requests. | 215 // chrome-extension: resources should be allowed to receive CORS requests. |
216 WebSecurityPolicy::registerURLSchemeAsCORSEnabled(extension_scheme); | 216 WebSecurityPolicy::registerURLSchemeAsCORSEnabled(extension_scheme); |
217 | |
218 WebString extension_resource_scheme( | |
219 ASCIIToUTF16(chrome::kExtensionResourceScheme)); | |
220 WebSecurityPolicy::registerURLSchemeAsSecure(extension_resource_scheme); | |
221 | |
222 // chrome-extension-resource: resources should be allowed to receive CORS | |
223 // requests. | |
224 WebSecurityPolicy::registerURLSchemeAsCORSEnabled(extension_resource_scheme); | |
217 } | 225 } |
218 | 226 |
219 void ChromeContentRendererClient::RenderViewCreated( | 227 void ChromeContentRendererClient::RenderViewCreated( |
220 content::RenderView* render_view) { | 228 content::RenderView* render_view) { |
221 ContentSettingsObserver* content_settings = | 229 ContentSettingsObserver* content_settings = |
222 new ContentSettingsObserver(render_view); | 230 new ContentSettingsObserver(render_view); |
223 if (chrome_observer_.get()) { | 231 if (chrome_observer_.get()) { |
224 content_settings->SetContentSettingRules( | 232 content_settings->SetContentSettingRules( |
225 chrome_observer_->content_setting_rules()); | 233 chrome_observer_->content_setting_rules()); |
226 } | 234 } |
(...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
697 return true; | 705 return true; |
698 } | 706 } |
699 | 707 |
700 return false; | 708 return false; |
701 } | 709 } |
702 | 710 |
703 bool ChromeContentRendererClient::WillSendRequest(WebKit::WebFrame* frame, | 711 bool ChromeContentRendererClient::WillSendRequest(WebKit::WebFrame* frame, |
704 const GURL& url, | 712 const GURL& url, |
705 GURL* new_url) { | 713 GURL* new_url) { |
706 // If the request is for an extension resource, check whether it should be | 714 // If the request is for an extension resource, check whether it should be |
707 // allowed. If not allowed, we reset the URL to something invalid to prevent | 715 // allowed. If not allowed, we reset the URL to something invalid to prevent |
miket_OOO
2012/04/12 18:38:39
I think this comment should be updated.
Peng
2012/04/12 20:13:22
Done.
| |
708 // the request and cause an error. | 716 // the request and cause an error. |
709 if (url.SchemeIs(chrome::kExtensionScheme) && | 717 if (!ExtensionResourceRequestPolicy::CanRequestResource( |
710 !ExtensionResourceRequestPolicy::CanRequestResource( | |
711 url, | 718 url, |
712 frame, | 719 frame, |
713 extension_dispatcher_->extensions())) { | 720 extension_dispatcher_->extensions())) { |
714 *new_url = GURL("chrome-extension://invalid/"); | 721 *new_url = GURL("chrome-extension://invalid/"); |
715 return true; | 722 return true; |
716 } | 723 } |
717 | 724 |
718 return false; | 725 return false; |
719 } | 726 } |
720 | 727 |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
859 bool ChromeContentRendererClient::IsOtherExtensionWithWebRequestInstalled() { | 866 bool ChromeContentRendererClient::IsOtherExtensionWithWebRequestInstalled() { |
860 return extension_dispatcher_->IsOtherExtensionWithWebRequestInstalled(); | 867 return extension_dispatcher_->IsOtherExtensionWithWebRequestInstalled(); |
861 } | 868 } |
862 | 869 |
863 void ChromeContentRendererClient::RegisterPPAPIInterfaceFactories( | 870 void ChromeContentRendererClient::RegisterPPAPIInterfaceFactories( |
864 webkit::ppapi::PpapiInterfaceFactoryManager* factory_manager) { | 871 webkit::ppapi::PpapiInterfaceFactoryManager* factory_manager) { |
865 factory_manager->RegisterFactory(ChromePPAPIInterfaceFactory); | 872 factory_manager->RegisterFactory(ChromePPAPIInterfaceFactory); |
866 } | 873 } |
867 | 874 |
868 } // namespace chrome | 875 } // namespace chrome |
OLD | NEW |