| Index: content/browser/renderer_host/p2p/socket_host_tcp.cc
|
| diff --git a/content/browser/renderer_host/p2p/socket_host_tcp.cc b/content/browser/renderer_host/p2p/socket_host_tcp.cc
|
| index 007472c07ee6ee44b0daed0049e7c0da4f365944..00f2e87648c5974b795b45a98fa41c6522cc4858 100644
|
| --- a/content/browser/renderer_host/p2p/socket_host_tcp.cc
|
| +++ b/content/browser/renderer_host/p2p/socket_host_tcp.cc
|
| @@ -65,7 +65,7 @@ bool P2PSocketHostTcpBase::InitAccepted(const net::IPEndPoint& remote_address,
|
| DCHECK(socket);
|
| DCHECK_EQ(state_, STATE_UNINITIALIZED);
|
|
|
| - remote_address_ = remote_address;
|
| + remote_address_.ip_address = remote_address;
|
| // TODO(ronghuawu): Add FakeSSLServerSocket.
|
| socket_.reset(socket);
|
| state_ = STATE_OPEN;
|
| @@ -74,14 +74,14 @@ bool P2PSocketHostTcpBase::InitAccepted(const net::IPEndPoint& remote_address,
|
| }
|
|
|
| bool P2PSocketHostTcpBase::Init(const net::IPEndPoint& local_address,
|
| - const net::IPEndPoint& remote_address) {
|
| + const P2PHostAndIPEndPoint& remote_address) {
|
| DCHECK_EQ(state_, STATE_UNINITIALIZED);
|
|
|
| remote_address_ = remote_address;
|
| state_ = STATE_CONNECTING;
|
|
|
| net::HostPortPair dest_host_port_pair =
|
| - net::HostPortPair::FromIPEndPoint(remote_address);
|
| + net::HostPortPair::FromIPEndPoint(remote_address.ip_address);
|
| // TODO(mallinath) - We are ignoring local_address altogether. We should
|
| // find a way to inject this into ProxyResolvingClientSocket. This could be
|
| // a problem on multi-homed host.
|
| @@ -173,7 +173,10 @@ void P2PSocketHostTcpBase::StartTls() {
|
| // Default ssl config.
|
| const net::SSLConfig ssl_config;
|
| net::HostPortPair dest_host_port_pair =
|
| - net::HostPortPair::FromIPEndPoint(remote_address_);
|
| + net::HostPortPair::FromIPEndPoint(remote_address_.ip_address);
|
| + if (!remote_address_.hostname.empty())
|
| + dest_host_port_pair.set_host(remote_address_.hostname);
|
| +
|
| net::ClientSocketFactory* socket_factory =
|
| net::ClientSocketFactory::GetDefaultFactory();
|
| DCHECK(socket_factory);
|
| @@ -273,7 +276,7 @@ void P2PSocketHostTcpBase::OnPacket(const std::vector<char>& data) {
|
| connected_ = true;
|
| } else if (!stun || type == STUN_DATA_INDICATION) {
|
| LOG(ERROR) << "Received unexpected data packet from "
|
| - << remote_address_.ToString()
|
| + << remote_address_.ip_address.ToString()
|
| << " before STUN binding is finished. "
|
| << "Terminating connection.";
|
| OnError();
|
| @@ -282,7 +285,7 @@ void P2PSocketHostTcpBase::OnPacket(const std::vector<char>& data) {
|
| }
|
|
|
| message_sender_->Send(new P2PMsg_OnDataReceived(
|
| - id_, remote_address_, data, base::TimeTicks::Now()));
|
| + id_, remote_address_.ip_address, data, base::TimeTicks::Now()));
|
| }
|
|
|
| // Note: dscp is not actually used on TCP sockets as this point,
|
| @@ -297,7 +300,7 @@ void P2PSocketHostTcpBase::Send(const net::IPEndPoint& to,
|
| return;
|
| }
|
|
|
| - if (!(to == remote_address_)) {
|
| + if (!(to == remote_address_.ip_address)) {
|
| // Renderer should use this socket only to send data to |remote_address_|.
|
| NOTREACHED();
|
| OnError();
|
|
|