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

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

Issue 2620303003: Replace ASSERT by RTC_DCHECK in all non-test code. (Closed)
Patch Set: Address final nits. Created 3 years, 11 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/stunport.cc ('k') | webrtc/p2p/base/tcpport.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 2004 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2004 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/stunrequest.h" 11 #include "webrtc/p2p/base/stunrequest.h"
12 12
13 #include <algorithm> 13 #include <algorithm>
14 #include <memory> 14 #include <memory>
15 15
16 #include "webrtc/base/checks.h"
16 #include "webrtc/base/common.h" 17 #include "webrtc/base/common.h"
17 #include "webrtc/base/helpers.h" 18 #include "webrtc/base/helpers.h"
18 #include "webrtc/base/logging.h" 19 #include "webrtc/base/logging.h"
19 #include "webrtc/base/stringencode.h" 20 #include "webrtc/base/stringencode.h"
20 21
21 namespace cricket { 22 namespace cricket {
22 23
23 const uint32_t MSG_STUN_SEND = 1; 24 const uint32_t MSG_STUN_SEND = 1;
24 25
25 const int MAX_SENDS = 9; 26 const int MAX_SENDS = 9;
(...skipping 11 matching lines...) Expand all
37 delete request; 38 delete request;
38 } 39 }
39 } 40 }
40 41
41 void StunRequestManager::Send(StunRequest* request) { 42 void StunRequestManager::Send(StunRequest* request) {
42 SendDelayed(request, 0); 43 SendDelayed(request, 0);
43 } 44 }
44 45
45 void StunRequestManager::SendDelayed(StunRequest* request, int delay) { 46 void StunRequestManager::SendDelayed(StunRequest* request, int delay) {
46 request->set_manager(this); 47 request->set_manager(this);
47 ASSERT(requests_.find(request->id()) == requests_.end()); 48 RTC_DCHECK(requests_.find(request->id()) == requests_.end());
48 request->set_origin(origin_); 49 request->set_origin(origin_);
49 request->Construct(); 50 request->Construct();
50 requests_[request->id()] = request; 51 requests_[request->id()] = request;
51 if (delay > 0) { 52 if (delay > 0) {
52 thread_->PostDelayed(RTC_FROM_HERE, delay, request, MSG_STUN_SEND, NULL); 53 thread_->PostDelayed(RTC_FROM_HERE, delay, request, MSG_STUN_SEND, NULL);
53 } else { 54 } else {
54 thread_->Send(RTC_FROM_HERE, request, MSG_STUN_SEND, NULL); 55 thread_->Send(RTC_FROM_HERE, request, MSG_STUN_SEND, NULL);
55 } 56 }
56 } 57 }
57 58
(...skipping 11 matching lines...) Expand all
69 for (const auto kv : requests_) { 70 for (const auto kv : requests_) {
70 StunRequest* request = kv.second; 71 StunRequest* request = kv.second;
71 if (msg_type == kAllRequests || msg_type == request->type()) { 72 if (msg_type == kAllRequests || msg_type == request->type()) {
72 return true; 73 return true;
73 } 74 }
74 } 75 }
75 return false; 76 return false;
76 } 77 }
77 78
78 void StunRequestManager::Remove(StunRequest* request) { 79 void StunRequestManager::Remove(StunRequest* request) {
79 ASSERT(request->manager() == this); 80 RTC_DCHECK(request->manager() == this);
80 RequestMap::iterator iter = requests_.find(request->id()); 81 RequestMap::iterator iter = requests_.find(request->id());
81 if (iter != requests_.end()) { 82 if (iter != requests_.end()) {
82 ASSERT(iter->second == request); 83 RTC_DCHECK(iter->second == request);
83 requests_.erase(iter); 84 requests_.erase(iter);
84 thread_->Clear(request); 85 thread_->Clear(request);
85 } 86 }
86 } 87 }
87 88
88 void StunRequestManager::Clear() { 89 void StunRequestManager::Clear() {
89 std::vector<StunRequest*> requests; 90 std::vector<StunRequest*> requests;
90 for (RequestMap::iterator i = requests_.begin(); i != requests_.end(); ++i) 91 for (RequestMap::iterator i = requests_.begin(); i != requests_.end(); ++i)
91 requests.push_back(i->second); 92 requests.push_back(i->second);
92 93
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 } 159 }
159 160
160 StunRequest::StunRequest(StunMessage* request) 161 StunRequest::StunRequest(StunMessage* request)
161 : count_(0), timeout_(false), manager_(0), 162 : count_(0), timeout_(false), manager_(0),
162 msg_(request), tstamp_(0) { 163 msg_(request), tstamp_(0) {
163 msg_->SetTransactionID( 164 msg_->SetTransactionID(
164 rtc::CreateRandomString(kStunTransactionIdLength)); 165 rtc::CreateRandomString(kStunTransactionIdLength));
165 } 166 }
166 167
167 StunRequest::~StunRequest() { 168 StunRequest::~StunRequest() {
168 ASSERT(manager_ != NULL); 169 RTC_DCHECK(manager_ != NULL);
169 if (manager_) { 170 if (manager_) {
170 manager_->Remove(this); 171 manager_->Remove(this);
171 manager_->thread_->Clear(this); 172 manager_->thread_->Clear(this);
172 } 173 }
173 delete msg_; 174 delete msg_;
174 } 175 }
175 176
176 void StunRequest::Construct() { 177 void StunRequest::Construct() {
177 if (msg_->type() == 0) { 178 if (msg_->type() == 0) {
178 if (!origin_.empty()) { 179 if (!origin_.empty()) {
179 msg_->AddAttribute(new StunByteStringAttribute(STUN_ATTR_ORIGIN, 180 msg_->AddAttribute(new StunByteStringAttribute(STUN_ATTR_ORIGIN,
180 origin_)); 181 origin_));
181 } 182 }
182 Prepare(msg_); 183 Prepare(msg_);
183 ASSERT(msg_->type() != 0); 184 RTC_DCHECK(msg_->type() != 0);
184 } 185 }
185 } 186 }
186 187
187 int StunRequest::type() { 188 int StunRequest::type() {
188 ASSERT(msg_ != NULL); 189 RTC_DCHECK(msg_ != NULL);
189 return msg_->type(); 190 return msg_->type();
190 } 191 }
191 192
192 const StunMessage* StunRequest::msg() const { 193 const StunMessage* StunRequest::msg() const {
193 return msg_; 194 return msg_;
194 } 195 }
195 196
196 int StunRequest::Elapsed() const { 197 int StunRequest::Elapsed() const {
197 return static_cast<int>(rtc::TimeMillis() - tstamp_); 198 return static_cast<int>(rtc::TimeMillis() - tstamp_);
198 } 199 }
199 200
200 201
201 void StunRequest::set_manager(StunRequestManager* manager) { 202 void StunRequest::set_manager(StunRequestManager* manager) {
202 ASSERT(!manager_); 203 RTC_DCHECK(!manager_);
203 manager_ = manager; 204 manager_ = manager;
204 } 205 }
205 206
206 void StunRequest::OnMessage(rtc::Message* pmsg) { 207 void StunRequest::OnMessage(rtc::Message* pmsg) {
207 ASSERT(manager_ != NULL); 208 RTC_DCHECK(manager_ != NULL);
208 ASSERT(pmsg->message_id == MSG_STUN_SEND); 209 RTC_DCHECK(pmsg->message_id == MSG_STUN_SEND);
209 210
210 if (timeout_) { 211 if (timeout_) {
211 OnTimeout(); 212 OnTimeout();
212 delete this; 213 delete this;
213 return; 214 return;
214 } 215 }
215 216
216 tstamp_ = rtc::TimeMillis(); 217 tstamp_ = rtc::TimeMillis();
217 218
218 rtc::ByteBufferWriter buf; 219 rtc::ByteBufferWriter buf;
(...skipping 15 matching lines...) Expand all
234 } 235 }
235 236
236 int StunRequest::resend_delay() { 237 int StunRequest::resend_delay() {
237 if (count_ == 0) { 238 if (count_ == 0) {
238 return 0; 239 return 0;
239 } 240 }
240 return DELAY_UNIT * std::min(1 << (count_-1), DELAY_MAX_FACTOR); 241 return DELAY_UNIT * std::min(1 << (count_-1), DELAY_MAX_FACTOR);
241 } 242 }
242 243
243 } // namespace cricket 244 } // namespace cricket
OLDNEW
« no previous file with comments | « webrtc/p2p/base/stunport.cc ('k') | webrtc/p2p/base/tcpport.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698