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

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

Issue 2665343002: Change StunMessage::AddAttribute return type from bool to void. (Closed)
Patch Set: Created 3 years, 10 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
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
(...skipping 910 matching lines...) Expand 10 before | Expand all | Expand 10 after
921 return true; 921 return true;
922 } 922 }
923 923
924 void TurnPort::SendRequest(StunRequest* req, int delay) { 924 void TurnPort::SendRequest(StunRequest* req, int delay) {
925 request_manager_.SendDelayed(req, delay); 925 request_manager_.SendDelayed(req, delay);
926 } 926 }
927 927
928 void TurnPort::AddRequestAuthInfo(StunMessage* msg) { 928 void TurnPort::AddRequestAuthInfo(StunMessage* msg) {
929 // If we've gotten the necessary data from the server, add it to our request. 929 // If we've gotten the necessary data from the server, add it to our request.
930 VERIFY(!hash_.empty()); 930 VERIFY(!hash_.empty());
931 VERIFY(msg->AddAttribute(new StunByteStringAttribute( 931 msg->AddAttribute(new StunByteStringAttribute(
932 STUN_ATTR_USERNAME, credentials_.username))); 932 STUN_ATTR_USERNAME, credentials_.username));
933 VERIFY(msg->AddAttribute(new StunByteStringAttribute( 933 msg->AddAttribute(new StunByteStringAttribute(
934 STUN_ATTR_REALM, realm_))); 934 STUN_ATTR_REALM, realm_));
935 VERIFY(msg->AddAttribute(new StunByteStringAttribute( 935 msg->AddAttribute(new StunByteStringAttribute(
936 STUN_ATTR_NONCE, nonce_))); 936 STUN_ATTR_NONCE, nonce_));
937 VERIFY(msg->AddMessageIntegrity(hash())); 937 VERIFY(msg->AddMessageIntegrity(hash()));
938 } 938 }
939 939
940 int TurnPort::Send(const void* data, size_t len, 940 int TurnPort::Send(const void* data, size_t len,
941 const rtc::PacketOptions& options) { 941 const rtc::PacketOptions& options) {
942 return socket_->SendTo(data, len, server_address_.address, options); 942 return socket_->SendTo(data, len, server_address_.address, options);
943 } 943 }
944 944
945 void TurnPort::UpdateHash() { 945 void TurnPort::UpdateHash() {
946 VERIFY(ComputeStunCredentialHash(credentials_.username, realm_, 946 VERIFY(ComputeStunCredentialHash(credentials_.username, realm_,
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
1075 : StunRequest(new TurnMessage()), 1075 : StunRequest(new TurnMessage()),
1076 port_(port) { 1076 port_(port) {
1077 } 1077 }
1078 1078
1079 void TurnAllocateRequest::Prepare(StunMessage* request) { 1079 void TurnAllocateRequest::Prepare(StunMessage* request) {
1080 // Create the request as indicated in RFC 5766, Section 6.1. 1080 // Create the request as indicated in RFC 5766, Section 6.1.
1081 request->SetType(TURN_ALLOCATE_REQUEST); 1081 request->SetType(TURN_ALLOCATE_REQUEST);
1082 StunUInt32Attribute* transport_attr = StunAttribute::CreateUInt32( 1082 StunUInt32Attribute* transport_attr = StunAttribute::CreateUInt32(
1083 STUN_ATTR_REQUESTED_TRANSPORT); 1083 STUN_ATTR_REQUESTED_TRANSPORT);
1084 transport_attr->SetValue(IPPROTO_UDP << 24); 1084 transport_attr->SetValue(IPPROTO_UDP << 24);
1085 VERIFY(request->AddAttribute(transport_attr)); 1085 request->AddAttribute(transport_attr);
1086 if (!port_->hash().empty()) { 1086 if (!port_->hash().empty()) {
1087 port_->AddRequestAuthInfo(request); 1087 port_->AddRequestAuthInfo(request);
1088 } 1088 }
1089 } 1089 }
1090 1090
1091 void TurnAllocateRequest::OnSent() { 1091 void TurnAllocateRequest::OnSent() {
1092 LOG_J(LS_INFO, port_) << "TURN allocate request sent" 1092 LOG_J(LS_INFO, port_) << "TURN allocate request sent"
1093 << ", id=" << rtc::hex_encode(id()); 1093 << ", id=" << rtc::hex_encode(id());
1094 StunRequest::OnSent(); 1094 StunRequest::OnSent();
1095 } 1095 }
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
1249 : StunRequest(new TurnMessage()), 1249 : StunRequest(new TurnMessage()),
1250 port_(port), 1250 port_(port),
1251 lifetime_(-1) { 1251 lifetime_(-1) {
1252 } 1252 }
1253 1253
1254 void TurnRefreshRequest::Prepare(StunMessage* request) { 1254 void TurnRefreshRequest::Prepare(StunMessage* request) {
1255 // Create the request as indicated in RFC 5766, Section 7.1. 1255 // Create the request as indicated in RFC 5766, Section 7.1.
1256 // No attributes need to be included. 1256 // No attributes need to be included.
1257 request->SetType(TURN_REFRESH_REQUEST); 1257 request->SetType(TURN_REFRESH_REQUEST);
1258 if (lifetime_ > -1) { 1258 if (lifetime_ > -1) {
1259 VERIFY(request->AddAttribute(new StunUInt32Attribute( 1259 request->AddAttribute(new StunUInt32Attribute(
1260 STUN_ATTR_LIFETIME, lifetime_))); 1260 STUN_ATTR_LIFETIME, lifetime_));
1261 } 1261 }
1262 1262
1263 port_->AddRequestAuthInfo(request); 1263 port_->AddRequestAuthInfo(request);
1264 } 1264 }
1265 1265
1266 void TurnRefreshRequest::OnSent() { 1266 void TurnRefreshRequest::OnSent() {
1267 LOG_J(LS_INFO, port_) << "TURN refresh request sent" 1267 LOG_J(LS_INFO, port_) << "TURN refresh request sent"
1268 << ", id=" << rtc::hex_encode(id()); 1268 << ", id=" << rtc::hex_encode(id());
1269 StunRequest::OnSent(); 1269 StunRequest::OnSent();
1270 } 1270 }
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
1319 port_(port), 1319 port_(port),
1320 entry_(entry), 1320 entry_(entry),
1321 ext_addr_(ext_addr) { 1321 ext_addr_(ext_addr) {
1322 entry_->SignalDestroyed.connect( 1322 entry_->SignalDestroyed.connect(
1323 this, &TurnCreatePermissionRequest::OnEntryDestroyed); 1323 this, &TurnCreatePermissionRequest::OnEntryDestroyed);
1324 } 1324 }
1325 1325
1326 void TurnCreatePermissionRequest::Prepare(StunMessage* request) { 1326 void TurnCreatePermissionRequest::Prepare(StunMessage* request) {
1327 // Create the request as indicated in RFC5766, Section 9.1. 1327 // Create the request as indicated in RFC5766, Section 9.1.
1328 request->SetType(TURN_CREATE_PERMISSION_REQUEST); 1328 request->SetType(TURN_CREATE_PERMISSION_REQUEST);
1329 VERIFY(request->AddAttribute(new StunXorAddressAttribute( 1329 request->AddAttribute(new StunXorAddressAttribute(
1330 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_))); 1330 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_));
1331 port_->AddRequestAuthInfo(request); 1331 port_->AddRequestAuthInfo(request);
1332 } 1332 }
1333 1333
1334 void TurnCreatePermissionRequest::OnSent() { 1334 void TurnCreatePermissionRequest::OnSent() {
1335 LOG_J(LS_INFO, port_) << "TURN create permission request sent" 1335 LOG_J(LS_INFO, port_) << "TURN create permission request sent"
1336 << ", id=" << rtc::hex_encode(id()); 1336 << ", id=" << rtc::hex_encode(id());
1337 StunRequest::OnSent(); 1337 StunRequest::OnSent();
1338 } 1338 }
1339 1339
1340 void TurnCreatePermissionRequest::OnResponse(StunMessage* response) { 1340 void TurnCreatePermissionRequest::OnResponse(StunMessage* response) {
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1380 entry_(entry), 1380 entry_(entry),
1381 channel_id_(channel_id), 1381 channel_id_(channel_id),
1382 ext_addr_(ext_addr) { 1382 ext_addr_(ext_addr) {
1383 entry_->SignalDestroyed.connect( 1383 entry_->SignalDestroyed.connect(
1384 this, &TurnChannelBindRequest::OnEntryDestroyed); 1384 this, &TurnChannelBindRequest::OnEntryDestroyed);
1385 } 1385 }
1386 1386
1387 void TurnChannelBindRequest::Prepare(StunMessage* request) { 1387 void TurnChannelBindRequest::Prepare(StunMessage* request) {
1388 // Create the request as indicated in RFC5766, Section 11.1. 1388 // Create the request as indicated in RFC5766, Section 11.1.
1389 request->SetType(TURN_CHANNEL_BIND_REQUEST); 1389 request->SetType(TURN_CHANNEL_BIND_REQUEST);
1390 VERIFY(request->AddAttribute(new StunUInt32Attribute( 1390 request->AddAttribute(new StunUInt32Attribute(
1391 STUN_ATTR_CHANNEL_NUMBER, channel_id_ << 16))); 1391 STUN_ATTR_CHANNEL_NUMBER, channel_id_ << 16));
1392 VERIFY(request->AddAttribute(new StunXorAddressAttribute( 1392 request->AddAttribute(new StunXorAddressAttribute(
1393 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_))); 1393 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_));
1394 port_->AddRequestAuthInfo(request); 1394 port_->AddRequestAuthInfo(request);
1395 } 1395 }
1396 1396
1397 void TurnChannelBindRequest::OnSent() { 1397 void TurnChannelBindRequest::OnSent() {
1398 LOG_J(LS_INFO, port_) << "TURN channel bind request sent" 1398 LOG_J(LS_INFO, port_) << "TURN channel bind request sent"
1399 << ", id=" << rtc::hex_encode(id()); 1399 << ", id=" << rtc::hex_encode(id());
1400 StunRequest::OnSent(); 1400 StunRequest::OnSent();
1401 } 1401 }
1402 1402
1403 void TurnChannelBindRequest::OnResponse(StunMessage* response) { 1403 void TurnChannelBindRequest::OnResponse(StunMessage* response) {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
1464 1464
1465 int TurnEntry::Send(const void* data, size_t size, bool payload, 1465 int TurnEntry::Send(const void* data, size_t size, bool payload,
1466 const rtc::PacketOptions& options) { 1466 const rtc::PacketOptions& options) {
1467 rtc::ByteBufferWriter buf; 1467 rtc::ByteBufferWriter buf;
1468 if (state_ != STATE_BOUND) { 1468 if (state_ != STATE_BOUND) {
1469 // If we haven't bound the channel yet, we have to use a Send Indication. 1469 // If we haven't bound the channel yet, we have to use a Send Indication.
1470 TurnMessage msg; 1470 TurnMessage msg;
1471 msg.SetType(TURN_SEND_INDICATION); 1471 msg.SetType(TURN_SEND_INDICATION);
1472 msg.SetTransactionID( 1472 msg.SetTransactionID(
1473 rtc::CreateRandomString(kStunTransactionIdLength)); 1473 rtc::CreateRandomString(kStunTransactionIdLength));
1474 VERIFY(msg.AddAttribute(new StunXorAddressAttribute( 1474 msg.AddAttribute(new StunXorAddressAttribute(
1475 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_))); 1475 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_));
1476 VERIFY(msg.AddAttribute(new StunByteStringAttribute( 1476 msg.AddAttribute(new StunByteStringAttribute(
1477 STUN_ATTR_DATA, data, size))); 1477 STUN_ATTR_DATA, data, size));
1478 VERIFY(msg.Write(&buf)); 1478 VERIFY(msg.Write(&buf));
1479 1479
1480 // If we're sending real data, request a channel bind that we can use later. 1480 // If we're sending real data, request a channel bind that we can use later.
1481 if (state_ == STATE_UNBOUND && payload) { 1481 if (state_ == STATE_UNBOUND && payload) {
1482 SendChannelBindRequest(0); 1482 SendChannelBindRequest(0);
1483 state_ = STATE_BINDING; 1483 state_ = STATE_BINDING;
1484 } 1484 }
1485 } else { 1485 } else {
1486 // If the channel is bound, we can send the data as a Channel Message. 1486 // If the channel is bound, we can send the data as a Channel Message.
1487 buf.WriteUInt16(channel_id_); 1487 buf.WriteUInt16(channel_id_);
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
1549 } else { 1549 } else {
1550 state_ = STATE_UNBOUND; 1550 state_ = STATE_UNBOUND;
1551 port_->FailAndPruneConnection(ext_addr_); 1551 port_->FailAndPruneConnection(ext_addr_);
1552 } 1552 }
1553 } 1553 }
1554 void TurnEntry::OnChannelBindTimeout() { 1554 void TurnEntry::OnChannelBindTimeout() {
1555 state_ = STATE_UNBOUND; 1555 state_ = STATE_UNBOUND;
1556 port_->FailAndPruneConnection(ext_addr_); 1556 port_->FailAndPruneConnection(ext_addr_);
1557 } 1557 }
1558 } // namespace cricket 1558 } // namespace cricket
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698