Chromium Code Reviews| Index: extensions/browser/api/web_request/web_request_api.cc |
| diff --git a/extensions/browser/api/web_request/web_request_api.cc b/extensions/browser/api/web_request/web_request_api.cc |
| index d2e230904eab9a3009dd1badf2bc0149b903aa46..61a565eb36e4660e84ceefa139abe1f8de2a194f 100644 |
| --- a/extensions/browser/api/web_request/web_request_api.cc |
| +++ b/extensions/browser/api/web_request/web_request_api.cc |
| @@ -1499,6 +1499,18 @@ void ExtensionWebRequestEventRouter::GetMatchingListenersImpl( |
| extension_info_map, listener->id.extension_id, url, |
| frame_data.tab_id, crosses_incognito, |
| WebRequestPermissions::REQUIRE_HOST_PERMISSION); |
| + |
| + // Check if URL blocked from view/modification by policy (URL || Origin). |
| + if (extension_info_map) { |
| + const extensions::Extension* extension = |
| + extension_info_map->extensions().GetByID(listener->id.extension_id); |
| + if (extension->permissions_data()->IsRuntimeBlockedHost(url)) |
|
Devlin
2017/05/15 20:54:51
Why do we need this? WebRequestPermissions::CanEx
nrpeter
2017/05/15 22:44:43
IIUC, if you want to redirect a web request, the e
|
| + access = PermissionsData::ACCESS_WITHHELD; |
|
Devlin
2017/05/15 20:54:51
We would want DENIED, right? WITHHELD will surfac
nrpeter
2017/05/15 22:44:43
Done.
|
| + else if (extension->permissions_data()->IsRuntimeBlockedHost( |
| + request->first_party_for_cookies())) |
| + access = PermissionsData::ACCESS_WITHHELD; |
| + } |
| + |
| if (access != PermissionsData::ACCESS_ALLOWED) { |
| if (access == PermissionsData::ACCESS_WITHHELD && |
| web_request_event_router_delegate_) { |