| Index: chrome/browser/net/chrome_network_delegate.cc
|
| diff --git a/chrome/browser/net/chrome_network_delegate.cc b/chrome/browser/net/chrome_network_delegate.cc
|
| index c9f69cc5f68ba611223563a6609831582d0aff68..0ddb5dae0886d7a4236ae57d6aa0ca014b9de32b 100644
|
| --- a/chrome/browser/net/chrome_network_delegate.cc
|
| +++ b/chrome/browser/net/chrome_network_delegate.cc
|
| @@ -33,6 +33,10 @@
|
| #include "net/socket_stream/socket_stream.h"
|
| #include "net/url_request/url_request.h"
|
|
|
| +#if !defined(OS_ANDROID)
|
| +#include "chrome/browser/managed_mode_url_filter.h"
|
| +#endif
|
| +
|
| #if defined(OS_CHROMEOS)
|
| #include "base/chromeos/chromeos_version.h"
|
| #endif
|
| @@ -129,6 +133,7 @@ ChromeNetworkDelegate::ChromeNetworkDelegate(
|
| extensions::EventRouterForwarder* event_router,
|
| ExtensionInfoMap* extension_info_map,
|
| const policy::URLBlacklistManager* url_blacklist_manager,
|
| + const ManagedModeURLFilter* managed_mode_url_filter,
|
| void* profile,
|
| CookieSettings* cookie_settings,
|
| BooleanPrefMember* enable_referrers,
|
| @@ -139,6 +144,7 @@ ChromeNetworkDelegate::ChromeNetworkDelegate(
|
| extension_info_map_(extension_info_map),
|
| enable_referrers_(enable_referrers),
|
| url_blacklist_manager_(url_blacklist_manager),
|
| + managed_mode_url_filter_(managed_mode_url_filter),
|
| cache_stats_(cache_stats) {
|
| DCHECK(event_router);
|
| DCHECK(enable_referrers);
|
| @@ -185,6 +191,14 @@ int ChromeNetworkDelegate::OnBeforeURLRequest(
|
| }
|
| #endif
|
|
|
| +#if !defined(OS_ANDROID)
|
| + if (managed_mode_url_filter_ &&
|
| + !managed_mode_url_filter_->IsURLWhitelisted(request->url())) {
|
| + // Block for now.
|
| + return net::ERR_NETWORK_ACCESS_DENIED;
|
| + }
|
| +#endif
|
| +
|
| ForwardRequestStatus(REQUEST_STARTED, request, profile_);
|
|
|
| if (!enable_referrers_->GetValue())
|
|
|