diff options
author | dilmah@chromium.org <dilmah@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-14 17:48:07 +0000 |
---|---|---|
committer | dilmah@chromium.org <dilmah@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-14 17:48:07 +0000 |
commit | 5ddffb822144de64aa36bd1aa4fc0aad634a3454 (patch) | |
tree | 1319b6250421e165159e82288df605ae7d245b5c /chrome/browser/chromeos/web_socket_proxy_controller.cc | |
parent | 3b99e2ef219b43cdc51a3313268e6c9a27aa1be9 (diff) | |
download | chromium_src-5ddffb822144de64aa36bd1aa4fc0aad634a3454.zip chromium_src-5ddffb822144de64aa36bd1aa4fc0aad634a3454.tar.gz chromium_src-5ddffb822144de64aa36bd1aa4fc0aad634a3454.tar.bz2 |
Support SSL connections in websocket-to-TCP proxy.
For historical reasons current implementation of WS-to-TCP proxy was implemented as standalone libevent-based server.
Then it was integrated into chromium as is.
In order to support SSL we need to connect libevent-based proxy with MessageLoopForIO-based chromium network stack.
We do it using pipes.
It is intended as temporary solution until we will have
new shiny implementation of WS-to-TCP proxy integrated into network stack.
BUG=chromium-os:15533
TEST=Manual
Review URL: http://codereview.chromium.org/8087001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105515 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/web_socket_proxy_controller.cc')
-rw-r--r-- | chrome/browser/chromeos/web_socket_proxy_controller.cc | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/chrome/browser/chromeos/web_socket_proxy_controller.cc b/chrome/browser/chromeos/web_socket_proxy_controller.cc index c7ccfbf..3001ce0 100644 --- a/chrome/browser/chromeos/web_socket_proxy_controller.cc +++ b/chrome/browser/chromeos/web_socket_proxy_controller.cc @@ -83,10 +83,6 @@ class OriginValidator { const std::string& hostname, unsigned short port, chromeos::WebSocketProxyController::ConnectionFlags flags) { - if (flags & chromeos::WebSocketProxyController::TLS_OVER_TCP) { - NOTIMPLEMENTED(); - return false; - } return std::binary_search( allowed_ids_.begin(), allowed_ids_.end(), extension_id); } @@ -140,17 +136,8 @@ base::LazyInstance<ProxyLifetime> g_proxy_lifetime(base::LINKER_INITIALIZED); void ProxyTask::Run() { LOG(INFO) << "Attempt to run web socket proxy task"; - const int kPort = 10101; - - struct sockaddr_in sa; - memset(&sa, 0, sizeof(sa)); - sa.sin_family = AF_INET; - sa.sin_port = htons(kPort); - sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK); - chromeos::WebSocketProxy* server = new chromeos::WebSocketProxy( - g_validator.Get().allowed_origins(), - reinterpret_cast<sockaddr*>(&sa), sizeof(sa)); + g_validator.Get().allowed_origins()); { base::AutoLock alk(g_proxy_lifetime.Get().lock_); if (g_proxy_lifetime.Get().shutdown_requested_) |