summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-04 11:39:22 +0000
committerpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-04 11:39:22 +0000
commit01000cf14e2ee290142ff76cfe56cf91c02660a1 (patch)
tree82ab387267613bc91e5d80eee24703e482723040 /chrome
parent768e54d0cd1d76f53b25cdfab58776dd03c4c505 (diff)
downloadchromium_src-01000cf14e2ee290142ff76cfe56cf91c02660a1.zip
chromium_src-01000cf14e2ee290142ff76cfe56cf91c02660a1.tar.gz
chromium_src-01000cf14e2ee290142ff76cfe56cf91c02660a1.tar.bz2
DevTools: allow binding remote debugging to provided interface.
BUG= TEST= Review URL: http://codereview.chromium.org/6334105 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73796 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/browser_process.h1
-rw-r--r--chrome/browser/browser_process_impl.cc4
-rw-r--r--chrome/browser/browser_process_impl.h1
-rw-r--r--chrome/browser/debugger/devtools_http_protocol_handler.cc9
-rw-r--r--chrome/browser/debugger/devtools_http_protocol_handler.h5
-rw-r--r--chrome/browser/ui/browser_init.cc1
-rw-r--r--chrome/test/testing_browser_process.h1
7 files changed, 17 insertions, 5 deletions
diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
index d419d87..ffc3db09 100644
--- a/chrome/browser/browser_process.h
+++ b/chrome/browser/browser_process.h
@@ -124,6 +124,7 @@ class BrowserProcess {
virtual AutomationProviderList* InitAutomationProviderList() = 0;
virtual void InitDevToolsHttpProtocolHandler(
+ const std::string& ip,
int port,
const std::string& frontend_url) = 0;
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
index 90ea85c..ad5d4a4 100644
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -462,11 +462,13 @@ AutomationProviderList* BrowserProcessImpl::InitAutomationProviderList() {
}
void BrowserProcessImpl::InitDevToolsHttpProtocolHandler(
+ const std::string& ip,
int port,
const std::string& frontend_url) {
DCHECK(CalledOnValidThread());
devtools_http_handler_ =
- DevToolsHttpProtocolHandler::Start(port,
+ DevToolsHttpProtocolHandler::Start(ip,
+ port,
frontend_url,
new BrowserListTabContentsProvider());
}
diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h
index 5a19629..92a7deb 100644
--- a/chrome/browser/browser_process_impl.h
+++ b/chrome/browser/browser_process_impl.h
@@ -68,6 +68,7 @@ class BrowserProcessImpl : public BrowserProcess,
virtual ThumbnailGenerator* GetThumbnailGenerator();
virtual AutomationProviderList* InitAutomationProviderList();
virtual void InitDevToolsHttpProtocolHandler(
+ const std::string& ip,
int port,
const std::string& frontend_url);
virtual void InitDevToolsLegacyProtocolHandler(int port);
diff --git a/chrome/browser/debugger/devtools_http_protocol_handler.cc b/chrome/browser/debugger/devtools_http_protocol_handler.cc
index 9351b40..cee6b20a 100644
--- a/chrome/browser/debugger/devtools_http_protocol_handler.cc
+++ b/chrome/browser/debugger/devtools_http_protocol_handler.cc
@@ -87,11 +87,12 @@ class DevToolsClientHostImpl : public DevToolsClientHost {
// static
scoped_refptr<DevToolsHttpProtocolHandler> DevToolsHttpProtocolHandler::Start(
+ const std::string& ip,
int port,
const std::string& frontend_url,
TabContentsProvider* provider) {
scoped_refptr<DevToolsHttpProtocolHandler> http_handler =
- new DevToolsHttpProtocolHandler(port, frontend_url, provider);
+ new DevToolsHttpProtocolHandler(ip, port, frontend_url, provider);
http_handler->Start();
return http_handler;
}
@@ -370,10 +371,12 @@ void DevToolsHttpProtocolHandler::OnReadCompleted(net::URLRequest* request,
}
DevToolsHttpProtocolHandler::DevToolsHttpProtocolHandler(
+ const std::string& ip,
int port,
const std::string& frontend_host,
TabContentsProvider* provider)
- : port_(port),
+ : ip_(ip),
+ port_(port),
overriden_frontend_url_(frontend_host),
tab_contents_provider_(provider) {
if (overriden_frontend_url_.empty())
@@ -381,7 +384,7 @@ DevToolsHttpProtocolHandler::DevToolsHttpProtocolHandler(
}
void DevToolsHttpProtocolHandler::Init() {
- server_ = new HttpServer("127.0.0.1", port_, this);
+ server_ = new HttpServer(ip_, port_, this);
}
// Run on I/O thread
diff --git a/chrome/browser/debugger/devtools_http_protocol_handler.h b/chrome/browser/debugger/devtools_http_protocol_handler.h
index bfa2de8..aa6392b 100644
--- a/chrome/browser/debugger/devtools_http_protocol_handler.h
+++ b/chrome/browser/debugger/devtools_http_protocol_handler.h
@@ -37,6 +37,7 @@ class DevToolsHttpProtocolHandler
// Takes ownership over |provider|.
static scoped_refptr<DevToolsHttpProtocolHandler> Start(
+ const std::string& ip,
int port,
const std::string& frontend_url,
TabContentsProvider* provider);
@@ -48,7 +49,8 @@ class DevToolsHttpProtocolHandler
private:
friend class base::RefCountedThreadSafe<DevToolsHttpProtocolHandler>;
- DevToolsHttpProtocolHandler(int port,
+ DevToolsHttpProtocolHandler(const std::string& ip,
+ int port,
const std::string& frontend_url,
TabContentsProvider* provider);
virtual ~DevToolsHttpProtocolHandler();
@@ -91,6 +93,7 @@ class DevToolsHttpProtocolHandler
TabContents* GetTabContents(int session_id);
+ std::string ip_;
int port_;
std::string overriden_frontend_url_;
scoped_refptr<HttpServer> server_;
diff --git a/chrome/browser/ui/browser_init.cc b/chrome/browser/ui/browser_init.cc
index a2fefdf..ed30dff 100644
--- a/chrome/browser/ui/browser_init.cc
+++ b/chrome/browser/ui/browser_init.cc
@@ -616,6 +616,7 @@ bool BrowserInit::LaunchWithProfile::Launch(Profile* profile,
int64 port;
if (base::StringToInt64(port_str, &port) && port > 0 && port < 65535) {
g_browser_process->InitDevToolsHttpProtocolHandler(
+ "127.0.0.1",
static_cast<int>(port),
"");
} else {
diff --git a/chrome/test/testing_browser_process.h b/chrome/test/testing_browser_process.h
index 9655d5a..25fe4cb 100644
--- a/chrome/test/testing_browser_process.h
+++ b/chrome/test/testing_browser_process.h
@@ -150,6 +150,7 @@ class TestingBrowserProcess : public BrowserProcess {
}
virtual void InitDevToolsHttpProtocolHandler(
+ const std::string& ip,
int port,
const std::string& frontend_url) {
}