Index: chrome/browser/chrome_content_browser_client.cc |
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc |
index b765d7184df828fbcd03fe075ff277c74ff88d96..c720c7654436ebd1f6a9ae427bf17c634516d11d 100644 |
--- a/chrome/browser/chrome_content_browser_client.cc |
+++ b/chrome/browser/chrome_content_browser_client.cc |
@@ -80,6 +80,7 @@ |
#include "chrome/common/extensions/extension.h" |
#include "chrome/common/extensions/extension_process_policy.h" |
#include "chrome/common/extensions/extension_set.h" |
+#include "chrome/common/extensions/permissions/socket_permission.h" |
#include "chrome/common/logging_chrome.h" |
#include "chrome/common/pref_names.h" |
#include "chrome/common/render_messages.h" |
@@ -1713,7 +1714,9 @@ void ChromeContentBrowserClient::DidCreatePpapiPlugin( |
} |
bool ChromeContentBrowserClient::AllowPepperSocketAPI( |
- content::BrowserContext* browser_context, const GURL& url) { |
+ content::BrowserContext* browser_context, |
+ const GURL& url, |
+ const content::SocketPermissionRequest& params) { |
if (!url.is_valid()) |
return false; |
@@ -1749,7 +1752,10 @@ bool ChromeContentBrowserClient::AllowPepperSocketAPI( |
if (!extension) |
return false; |
- if (extension->HasAPIPermission(APIPermission::kSocket)) |
+ extensions::SocketPermission::CheckParam extension_params( |
+ params.type, params.host, params.port); |
+ if (extension->CheckAPIPermissionWithParam(APIPermission::kSocket, |
+ &extension_params)) |
return true; |
return false; |