Chromium Code Reviews| 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/browser/net/chrome_network_delegate.h" | 5 #include "chrome/browser/net/chrome_network_delegate.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "chrome/browser/browser_process.h" | 8 #include "chrome/browser/browser_process.h" |
| 9 #include "chrome/browser/content_settings/cookie_settings.h" | 9 #include "chrome/browser/content_settings/cookie_settings.h" |
| 10 #include "chrome/browser/content_settings/tab_specific_content_settings.h" | 10 #include "chrome/browser/content_settings/tab_specific_content_settings.h" |
| 11 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" | 11 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" |
| 12 #include "chrome/browser/extensions/api/proxy/proxy_api.h" | 12 #include "chrome/browser/extensions/api/proxy/proxy_api.h" |
| 13 #include "chrome/browser/extensions/api/web_request/web_request_api.h" | 13 #include "chrome/browser/extensions/api/web_request/web_request_api.h" |
| 14 #include "chrome/browser/extensions/extension_event_router_forwarder.h" | 14 #include "chrome/browser/extensions/extension_event_router_forwarder.h" |
| 15 #include "chrome/browser/extensions/extension_info_map.h" | 15 #include "chrome/browser/extensions/extension_info_map.h" |
| 16 #include "chrome/browser/extensions/extension_process_manager.h" | 16 #include "chrome/browser/extensions/extension_process_manager.h" |
| 17 #include "chrome/browser/managed_mode.h" | |
|
Joao da Silva
2012/07/13 12:32:11
Needed?
Bernhard Bauer
2012/07/13 14:21:07
Nope; removed.
| |
| 18 #include "chrome/browser/managed_mode_url_filter.h" | |
| 17 #include "chrome/browser/prefs/pref_member.h" | 19 #include "chrome/browser/prefs/pref_member.h" |
| 18 #include "chrome/browser/profiles/profile_manager.h" | 20 #include "chrome/browser/profiles/profile_manager.h" |
| 19 #include "chrome/browser/task_manager/task_manager.h" | 21 #include "chrome/browser/task_manager/task_manager.h" |
| 20 #include "chrome/common/pref_names.h" | 22 #include "chrome/common/pref_names.h" |
| 21 #include "chrome/common/url_constants.h" | 23 #include "chrome/common/url_constants.h" |
| 22 #include "content/public/browser/browser_thread.h" | 24 #include "content/public/browser/browser_thread.h" |
| 23 #include "content/public/browser/render_view_host.h" | 25 #include "content/public/browser/render_view_host.h" |
| 24 #include "content/public/browser/resource_request_info.h" | 26 #include "content/public/browser/resource_request_info.h" |
| 25 #include "net/base/host_port_pair.h" | 27 #include "net/base/host_port_pair.h" |
| 26 #include "net/base/net_errors.h" | 28 #include "net/base/net_errors.h" |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 116 status, profile_id, process_id, render_view_id)); | 118 status, profile_id, process_id, render_view_id)); |
| 117 } | 119 } |
| 118 } | 120 } |
| 119 | 121 |
| 120 } // namespace | 122 } // namespace |
| 121 | 123 |
| 122 ChromeNetworkDelegate::ChromeNetworkDelegate( | 124 ChromeNetworkDelegate::ChromeNetworkDelegate( |
| 123 ExtensionEventRouterForwarder* event_router, | 125 ExtensionEventRouterForwarder* event_router, |
| 124 ExtensionInfoMap* extension_info_map, | 126 ExtensionInfoMap* extension_info_map, |
| 125 const policy::URLBlacklistManager* url_blacklist_manager, | 127 const policy::URLBlacklistManager* url_blacklist_manager, |
| 128 const ManagedModeURLFilter* managed_mode_url_filter, | |
| 126 void* profile, | 129 void* profile, |
| 127 CookieSettings* cookie_settings, | 130 CookieSettings* cookie_settings, |
| 128 BooleanPrefMember* enable_referrers) | 131 BooleanPrefMember* enable_referrers) |
| 129 : event_router_(event_router), | 132 : event_router_(event_router), |
| 130 profile_(profile), | 133 profile_(profile), |
| 131 cookie_settings_(cookie_settings), | 134 cookie_settings_(cookie_settings), |
| 132 extension_info_map_(extension_info_map), | 135 extension_info_map_(extension_info_map), |
| 133 enable_referrers_(enable_referrers), | 136 enable_referrers_(enable_referrers), |
| 134 never_throttle_requests_(false), | 137 never_throttle_requests_(false), |
| 135 url_blacklist_manager_(url_blacklist_manager) { | 138 url_blacklist_manager_(url_blacklist_manager), |
| 139 managed_mode_url_filter_(managed_mode_url_filter) { | |
| 136 DCHECK(event_router); | 140 DCHECK(event_router); |
| 137 DCHECK(enable_referrers); | 141 DCHECK(enable_referrers); |
| 138 DCHECK(!profile || cookie_settings); | 142 DCHECK(!profile || cookie_settings); |
| 139 } | 143 } |
| 140 | 144 |
| 141 ChromeNetworkDelegate::~ChromeNetworkDelegate() {} | 145 ChromeNetworkDelegate::~ChromeNetworkDelegate() {} |
| 142 | 146 |
| 143 void ChromeNetworkDelegate::NeverThrottleRequests() { | 147 void ChromeNetworkDelegate::NeverThrottleRequests() { |
| 144 never_throttle_requests_ = true; | 148 never_throttle_requests_ = true; |
| 145 } | 149 } |
| (...skipping 24 matching lines...) Expand all Loading... | |
| 170 url_blacklist_manager_->IsURLBlocked(request->url())) { | 174 url_blacklist_manager_->IsURLBlocked(request->url())) { |
| 171 // URL access blocked by policy. | 175 // URL access blocked by policy. |
| 172 request->net_log().AddEvent( | 176 request->net_log().AddEvent( |
| 173 net::NetLog::TYPE_CHROME_POLICY_ABORTED_REQUEST, | 177 net::NetLog::TYPE_CHROME_POLICY_ABORTED_REQUEST, |
| 174 net::NetLog::StringCallback("url", | 178 net::NetLog::StringCallback("url", |
| 175 &request->url().possibly_invalid_spec())); | 179 &request->url().possibly_invalid_spec())); |
| 176 return net::ERR_NETWORK_ACCESS_DENIED; | 180 return net::ERR_NETWORK_ACCESS_DENIED; |
| 177 } | 181 } |
| 178 #endif | 182 #endif |
| 179 | 183 |
| 184 if (managed_mode_url_filter_ && | |
| 185 managed_mode_url_filter_->IsURLWhitelisted(request->url())) { | |
|
Joao da Silva
2012/07/13 12:32:11
Blocked when whitelisted? After looking at the imp
Bernhard Bauer
2012/07/13 14:21:07
Indeed :-D Fixed.
| |
| 186 // Block for now. | |
| 187 return net::ERR_NETWORK_ACCESS_DENIED; | |
| 188 } | |
| 189 | |
| 180 ForwardRequestStatus(REQUEST_STARTED, request, profile_); | 190 ForwardRequestStatus(REQUEST_STARTED, request, profile_); |
| 181 | 191 |
| 182 if (!enable_referrers_->GetValue()) | 192 if (!enable_referrers_->GetValue()) |
| 183 request->set_referrer(std::string()); | 193 request->set_referrer(std::string()); |
| 184 return ExtensionWebRequestEventRouter::GetInstance()->OnBeforeRequest( | 194 return ExtensionWebRequestEventRouter::GetInstance()->OnBeforeRequest( |
| 185 profile_, extension_info_map_.get(), request, callback, new_url); | 195 profile_, extension_info_map_.get(), request, callback, new_url); |
| 186 } | 196 } |
| 187 | 197 |
| 188 int ChromeNetworkDelegate::OnBeforeSendHeaders( | 198 int ChromeNetworkDelegate::OnBeforeSendHeaders( |
| 189 net::URLRequest* request, | 199 net::URLRequest* request, |
| (...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 381 // URL access blocked by policy. | 391 // URL access blocked by policy. |
| 382 socket->net_log()->AddEvent( | 392 socket->net_log()->AddEvent( |
| 383 net::NetLog::TYPE_CHROME_POLICY_ABORTED_REQUEST, | 393 net::NetLog::TYPE_CHROME_POLICY_ABORTED_REQUEST, |
| 384 net::NetLog::StringCallback("url", | 394 net::NetLog::StringCallback("url", |
| 385 &socket->url().possibly_invalid_spec())); | 395 &socket->url().possibly_invalid_spec())); |
| 386 return net::ERR_NETWORK_ACCESS_DENIED; | 396 return net::ERR_NETWORK_ACCESS_DENIED; |
| 387 } | 397 } |
| 388 #endif | 398 #endif |
| 389 return net::OK; | 399 return net::OK; |
| 390 } | 400 } |
| OLD | NEW |