Index: chrome/browser/android/dev_tools_server.cc |
diff --git a/chrome/browser/android/dev_tools_server.cc b/chrome/browser/android/dev_tools_server.cc |
index acdb6b589d5bd7225c51eeb82d05122367aeb6f8..8e71af4b80c7a2c9aecf0a58baac9155282b5c63 100644 |
--- a/chrome/browser/android/dev_tools_server.cc |
+++ b/chrome/browser/android/dev_tools_server.cc |
@@ -77,6 +77,14 @@ static GURL GetFaviconURLForContents(WebContents* web_contents) { |
return GURL(); |
} |
+bool AuthenticateSocketAccess( |
+ const net::UnixDomainServerSocket::Credentials& credentials) { |
+ JNIEnv* env = base::android::AttachCurrentThread(); |
+ return Java_DevToolsServer_checkPermission(env, |
+ credentials.process_id, credentials.user_id) || |
byungchul
2014/08/04 22:18:02
wrong indentation. Should be aligned to '(', or li
SeRya
2014/08/05 10:32:27
Done.
|
+ content::CanUserConnectToDevTools(credentials); |
+} |
+ |
class TargetBase : public content::DevToolsTarget { |
public: |
// content::DevToolsTarget implementation: |
@@ -371,7 +379,7 @@ class DevToolsServerDelegate : public content::DevToolsHttpHandlerDelegate { |
*name, |
"", |
delegate, |
- base::Bind(&content::CanUserConnectToDevTools)) |
+ base::Bind(&AuthenticateSocketAccess)) |
.PassAs<net::StreamListenSocket>(); |
} |
@@ -427,7 +435,7 @@ void DevToolsServer::Start() { |
new net::deprecated::UnixDomainListenSocketWithAbstractNamespaceFactory( |
socket_name_, |
base::StringPrintf("%s_%d", socket_name_.c_str(), getpid()), |
- base::Bind(&content::CanUserConnectToDevTools)), |
+ base::Bind(&AuthenticateSocketAccess)), |
base::StringPrintf(kFrontEndURL, content::GetWebKitRevision().c_str()), |
new DevToolsServerDelegate(), |
base::FilePath()); |