Commit c725412d authored by Zach Stein's avatar Zach Stein Committed by Commit Bot

Copy hostname to output in AsyncAddressResolverImpl::GetResolvedAddress.

Stats collector calls SocketAddress::ToString on remote candidate
addresses that might contain .local hostnames. This changes causes
ToString to output the hostname instead of the resolved IP.

Bug: webrtc:9861
Change-Id: I24acdd555a66627749c25e36124b6c86a413c59a
Reviewed-on: https://chromium-review.googlesource.com/c/1281142Reviewed-by: default avatarSergey Ulanov <sergeyu@chromium.org>
Commit-Queue: Zach Stein <zstein@google.com>
Cr-Commit-Position: refs/heads/master@{#602924}
parent 388ab98a
......@@ -226,7 +226,7 @@ class AsyncAddressResolverImpl : public rtc::AsyncResolverInterface {
SEQUENCE_CHECKER(sequence_checker_);
int port_; // Port number in |addr| from Start() method.
rtc::SocketAddress addr_; // Address to resolve.
std::vector<rtc::IPAddress> addresses_; // Resolved addresses.
};
......@@ -664,9 +664,9 @@ AsyncAddressResolverImpl::~AsyncAddressResolverImpl() {
void AsyncAddressResolverImpl::Start(const rtc::SocketAddress& addr) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
// Copy port number from |addr|. |port_| must be copied
// when resolved address is returned in GetResolvedAddress.
port_ = addr.port();
// Port and hostname must be copied to the resolved address returned from
// GetResolvedAddress.
addr_ = addr;
resolver_->Start(addr, base::Bind(
&AsyncAddressResolverImpl::OnAddressResolved,
......@@ -682,8 +682,8 @@ bool AsyncAddressResolverImpl::GetResolvedAddress(
for (size_t i = 0; i < addresses_.size(); ++i) {
if (family == addresses_[i].family()) {
*addr = addr_;
addr->SetResolvedIP(addresses_[i]);
addr->SetPort(port_);
return true;
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment