Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(146)

Side by Side Diff: webrtc/p2p/base/turnport.cc

Issue 3012473002: Revert of Add logging of host lookups made by TurnPort to the RtcEventLog. (Closed)
Patch Set: Created 3 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/p2p/base/turnport.h ('k') | webrtc/p2p/base/turnport_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2012 The WebRTC Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #include "webrtc/p2p/base/turnport.h" 11 #include "webrtc/p2p/base/turnport.h"
12 12
13 #include <algorithm> 13 #include <algorithm>
14 #include <functional> 14 #include <functional>
15 15
16 #include "webrtc/logging/rtc_event_log/rtc_event_log.h"
17 #include "webrtc/p2p/base/common.h" 16 #include "webrtc/p2p/base/common.h"
18 #include "webrtc/p2p/base/stun.h" 17 #include "webrtc/p2p/base/stun.h"
19 #include "webrtc/rtc_base/asyncpacketsocket.h" 18 #include "webrtc/rtc_base/asyncpacketsocket.h"
20 #include "webrtc/rtc_base/byteorder.h" 19 #include "webrtc/rtc_base/byteorder.h"
21 #include "webrtc/rtc_base/checks.h" 20 #include "webrtc/rtc_base/checks.h"
22 #include "webrtc/rtc_base/logging.h" 21 #include "webrtc/rtc_base/logging.h"
23 #include "webrtc/rtc_base/nethelpers.h" 22 #include "webrtc/rtc_base/nethelpers.h"
24 #include "webrtc/rtc_base/ptr_util.h" 23 #include "webrtc/rtc_base/ptr_util.h"
25 #include "webrtc/rtc_base/socketaddress.h" 24 #include "webrtc/rtc_base/socketaddress.h"
26 #include "webrtc/rtc_base/stringencode.h" 25 #include "webrtc/rtc_base/stringencode.h"
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 183
185 TurnPort::TurnPort(rtc::Thread* thread, 184 TurnPort::TurnPort(rtc::Thread* thread,
186 rtc::PacketSocketFactory* factory, 185 rtc::PacketSocketFactory* factory,
187 rtc::Network* network, 186 rtc::Network* network,
188 rtc::AsyncPacketSocket* socket, 187 rtc::AsyncPacketSocket* socket,
189 const std::string& username, 188 const std::string& username,
190 const std::string& password, 189 const std::string& password,
191 const ProtocolAddress& server_address, 190 const ProtocolAddress& server_address,
192 const RelayCredentials& credentials, 191 const RelayCredentials& credentials,
193 int server_priority, 192 int server_priority,
194 const std::string& origin, 193 const std::string& origin)
195 webrtc::RtcEventLog* event_log) 194 : Port(thread,
196 : Port(thread, RELAY_PORT_TYPE, factory, network, username, password), 195 RELAY_PORT_TYPE,
196 factory,
197 network,
198 username,
199 password),
197 server_address_(server_address), 200 server_address_(server_address),
198 credentials_(credentials), 201 credentials_(credentials),
199 socket_(socket), 202 socket_(socket),
200 resolver_(NULL), 203 resolver_(NULL),
201 error_(0), 204 error_(0),
202 request_manager_(thread), 205 request_manager_(thread),
203 next_channel_number_(TURN_CHANNEL_NUMBER_START), 206 next_channel_number_(TURN_CHANNEL_NUMBER_START),
204 state_(STATE_CONNECTING), 207 state_(STATE_CONNECTING),
205 server_priority_(server_priority), 208 server_priority_(server_priority),
206 allocate_mismatch_retries_(0), 209 allocate_mismatch_retries_(0) {
207 event_log_(event_log) {
208 request_manager_.SignalSendPacket.connect(this, &TurnPort::OnSendStunPacket); 210 request_manager_.SignalSendPacket.connect(this, &TurnPort::OnSendStunPacket);
209 request_manager_.set_origin(origin); 211 request_manager_.set_origin(origin);
210 } 212 }
211 213
212 TurnPort::TurnPort(rtc::Thread* thread, 214 TurnPort::TurnPort(rtc::Thread* thread,
213 rtc::PacketSocketFactory* factory, 215 rtc::PacketSocketFactory* factory,
214 rtc::Network* network, 216 rtc::Network* network,
215 uint16_t min_port, 217 uint16_t min_port,
216 uint16_t max_port, 218 uint16_t max_port,
217 const std::string& username, 219 const std::string& username,
218 const std::string& password, 220 const std::string& password,
219 const ProtocolAddress& server_address, 221 const ProtocolAddress& server_address,
220 const RelayCredentials& credentials, 222 const RelayCredentials& credentials,
221 int server_priority, 223 int server_priority,
222 const std::string& origin, 224 const std::string& origin)
223 webrtc::RtcEventLog* event_log)
224 : Port(thread, 225 : Port(thread,
225 RELAY_PORT_TYPE, 226 RELAY_PORT_TYPE,
226 factory, 227 factory,
227 network, 228 network,
228 min_port, 229 min_port,
229 max_port, 230 max_port,
230 username, 231 username,
231 password), 232 password),
232 server_address_(server_address), 233 server_address_(server_address),
233 credentials_(credentials), 234 credentials_(credentials),
234 socket_(NULL), 235 socket_(NULL),
235 resolver_(NULL), 236 resolver_(NULL),
236 error_(0), 237 error_(0),
237 request_manager_(thread), 238 request_manager_(thread),
238 next_channel_number_(TURN_CHANNEL_NUMBER_START), 239 next_channel_number_(TURN_CHANNEL_NUMBER_START),
239 state_(STATE_CONNECTING), 240 state_(STATE_CONNECTING),
240 server_priority_(server_priority), 241 server_priority_(server_priority),
241 allocate_mismatch_retries_(0), 242 allocate_mismatch_retries_(0) {
242 event_log_(event_log) {
243 request_manager_.SignalSendPacket.connect(this, &TurnPort::OnSendStunPacket); 243 request_manager_.SignalSendPacket.connect(this, &TurnPort::OnSendStunPacket);
244 request_manager_.set_origin(origin); 244 request_manager_.set_origin(origin);
245 } 245 }
246 246
247 TurnPort::~TurnPort() { 247 TurnPort::~TurnPort() {
248 // TODO(juberti): Should this even be necessary? 248 // TODO(juberti): Should this even be necessary?
249 249
250 // release the allocation by sending a refresh with 250 // release the allocation by sending a refresh with
251 // lifetime 0. 251 // lifetime 0.
252 if (ready()) { 252 if (ready()) {
(...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after
701 if (resolver_->GetError() != 0 && server_address_.proto == PROTO_TCP) { 701 if (resolver_->GetError() != 0 && server_address_.proto == PROTO_TCP) {
702 if (!CreateTurnClientSocket()) { 702 if (!CreateTurnClientSocket()) {
703 OnAllocateError(); 703 OnAllocateError();
704 } 704 }
705 return; 705 return;
706 } 706 }
707 707
708 // Copy the original server address in |resolved_address|. For TLS based 708 // Copy the original server address in |resolved_address|. For TLS based
709 // sockets we need hostname along with resolved address. 709 // sockets we need hostname along with resolved address.
710 rtc::SocketAddress resolved_address = server_address_.address; 710 rtc::SocketAddress resolved_address = server_address_.address;
711 711 if (resolver_->GetError() != 0 ||
712 bool found = resolver_->GetError() == 0 && 712 !resolver_->GetResolvedAddress(Network()->GetBestIP().family(),
713 resolver_->GetResolvedAddress(Network()->GetBestIP().family(), 713 &resolved_address)) {
714 &resolved_address); 714 LOG_J(LS_WARNING, this) << "TURN host lookup received error "
715 if (event_log_) { 715 << resolver_->GetError();
716 int error = resolver_->GetError();
717 event_log_->LogHostLookupResult(
718 found ? 0 : (error == 0 ? -1 : error),
719 resolver_->GetResolveElapsedTimeMilliseconds());
720 }
721
722 if (!found) {
723 LOG_J(LS_WARNING, this)
724 << "TURN host lookup for " << resolved_address.hostname()
725 << " received error " << resolver_->GetError() << " after "
726 << resolver_->GetResolveElapsedTimeMilliseconds() << " ms";
727 error_ = resolver_->GetError(); 716 error_ = resolver_->GetError();
728 OnAllocateError(); 717 OnAllocateError();
729 return; 718 return;
730 } 719 }
731
732 LOG_J(LS_INFO, this) << "TURN host lookup for " << resolved_address.hostname()
733 << " completed in "
734 << resolver_->GetResolveElapsedTimeMilliseconds()
735 << " ms";
736
737 // Signal needs both resolved and unresolved address. After signal is sent 720 // Signal needs both resolved and unresolved address. After signal is sent
738 // we can copy resolved address back into |server_address_|. 721 // we can copy resolved address back into |server_address_|.
739 SignalResolvedServerAddress(this, server_address_.address, 722 SignalResolvedServerAddress(this, server_address_.address,
740 resolved_address); 723 resolved_address);
741 server_address_.address = resolved_address; 724 server_address_.address = resolved_address;
742 PrepareAddress(); 725 PrepareAddress();
743 } 726 }
744 727
745 void TurnPort::OnSendStunPacket(const void* data, size_t size, 728 void TurnPort::OnSendStunPacket(const void* data, size_t size,
746 StunRequest* request) { 729 StunRequest* request) {
(...skipping 861 matching lines...) Expand 10 before | Expand all | Expand 10 after
1608 } else { 1591 } else {
1609 state_ = STATE_UNBOUND; 1592 state_ = STATE_UNBOUND;
1610 port_->FailAndPruneConnection(ext_addr_); 1593 port_->FailAndPruneConnection(ext_addr_);
1611 } 1594 }
1612 } 1595 }
1613 void TurnEntry::OnChannelBindTimeout() { 1596 void TurnEntry::OnChannelBindTimeout() {
1614 state_ = STATE_UNBOUND; 1597 state_ = STATE_UNBOUND;
1615 port_->FailAndPruneConnection(ext_addr_); 1598 port_->FailAndPruneConnection(ext_addr_);
1616 } 1599 }
1617 } // namespace cricket 1600 } // namespace cricket
OLDNEW
« no previous file with comments | « webrtc/p2p/base/turnport.h ('k') | webrtc/p2p/base/turnport_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698