From bb6201ae4bc476d34dd48df193603d93ced176b0 Mon Sep 17 00:00:00 2001 From: "mallinath@webrtc.org" Date: Wed, 14 May 2014 22:43:05 +0000 Subject: [PATCH] TCP remote socket address should have both server hostname and IP address. Hostname is necessary when we are creating TLS based socket, for certificate verification. BUG=https://code.google.com/p/chromium/issues/detail?id=306285 R=jiayl@webrtc.org Review URL: https://webrtc-codereview.appspot.com/19489004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@6165 4adac7df-926f-26a2-2b94-8c16560cd09d --- talk/p2p/base/turnport.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/talk/p2p/base/turnport.cc b/talk/p2p/base/turnport.cc index d293845fe..195e9707b 100644 --- a/talk/p2p/base/turnport.cc +++ b/talk/p2p/base/turnport.cc @@ -454,7 +454,9 @@ void TurnPort::ResolveTurnAddress(const talk_base::SocketAddress& address) { void TurnPort::OnResolveResult(talk_base::AsyncResolverInterface* resolver) { ASSERT(resolver == resolver_); - talk_base::SocketAddress resolved_address; + // Copy the original server address in |resolved_address|. For TLS based + // sockets we need hostname along with resolved address. + talk_base::SocketAddress resolved_address = server_address_.address; if (resolver_->GetError() != 0 || !resolver_->GetResolvedAddress(ip().family(), &resolved_address)) { LOG_J(LS_WARNING, this) << "TURN host lookup received error "