OLD | NEW |
---|---|
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 909 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
920 LOG_J(LS_INFO, this) << "Scheduled refresh in " << delay << "ms."; | 920 LOG_J(LS_INFO, this) << "Scheduled refresh in " << delay << "ms."; |
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 RTC_DCHECK(!hash_.empty()); |
931 msg->AddAttribute(new StunByteStringAttribute( | 931 msg->AddAttribute(new StunByteStringAttribute( |
932 STUN_ATTR_USERNAME, credentials_.username)); | 932 STUN_ATTR_USERNAME, credentials_.username)); |
933 msg->AddAttribute(new StunByteStringAttribute( | 933 msg->AddAttribute(new StunByteStringAttribute( |
934 STUN_ATTR_REALM, realm_)); | 934 STUN_ATTR_REALM, realm_)); |
935 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 bool res = msg->AddMessageIntegrity(hash()); |
938 RTC_DCHECK(res); | |
938 } | 939 } |
939 | 940 |
940 int TurnPort::Send(const void* data, size_t len, | 941 int TurnPort::Send(const void* data, size_t len, |
941 const rtc::PacketOptions& options) { | 942 const rtc::PacketOptions& options) { |
942 return socket_->SendTo(data, len, server_address_.address, options); | 943 return socket_->SendTo(data, len, server_address_.address, options); |
943 } | 944 } |
944 | 945 |
945 void TurnPort::UpdateHash() { | 946 void TurnPort::UpdateHash() { |
946 VERIFY(ComputeStunCredentialHash(credentials_.username, realm_, | 947 bool res = ComputeStunCredentialHash(credentials_.username, realm_, |
947 credentials_.password, &hash_)); | 948 credentials_.password, &hash_); |
949 RTC_DCHECK(res); | |
948 } | 950 } |
949 | 951 |
950 bool TurnPort::UpdateNonce(StunMessage* response) { | 952 bool TurnPort::UpdateNonce(StunMessage* response) { |
951 // When stale nonce error received, we should update | 953 // When stale nonce error received, we should update |
952 // hash and store realm and nonce. | 954 // hash and store realm and nonce. |
953 // Check the mandatory attributes. | 955 // Check the mandatory attributes. |
954 const StunByteStringAttribute* realm_attr = | 956 const StunByteStringAttribute* realm_attr = |
955 response->GetByteString(STUN_ATTR_REALM); | 957 response->GetByteString(STUN_ATTR_REALM); |
956 if (!realm_attr) { | 958 if (!realm_attr) { |
957 LOG(LS_ERROR) << "Missing STUN_ATTR_REALM attribute in " | 959 LOG(LS_ERROR) << "Missing STUN_ATTR_REALM attribute in " |
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1468 if (state_ != STATE_BOUND) { | 1470 if (state_ != STATE_BOUND) { |
1469 // If we haven't bound the channel yet, we have to use a Send Indication. | 1471 // If we haven't bound the channel yet, we have to use a Send Indication. |
1470 TurnMessage msg; | 1472 TurnMessage msg; |
1471 msg.SetType(TURN_SEND_INDICATION); | 1473 msg.SetType(TURN_SEND_INDICATION); |
1472 msg.SetTransactionID( | 1474 msg.SetTransactionID( |
1473 rtc::CreateRandomString(kStunTransactionIdLength)); | 1475 rtc::CreateRandomString(kStunTransactionIdLength)); |
1474 msg.AddAttribute(new StunXorAddressAttribute( | 1476 msg.AddAttribute(new StunXorAddressAttribute( |
1475 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_)); | 1477 STUN_ATTR_XOR_PEER_ADDRESS, ext_addr_)); |
1476 msg.AddAttribute(new StunByteStringAttribute( | 1478 msg.AddAttribute(new StunByteStringAttribute( |
1477 STUN_ATTR_DATA, data, size)); | 1479 STUN_ATTR_DATA, data, size)); |
1478 VERIFY(msg.Write(&buf)); | 1480 bool res = msg.Write(&buf); |
1481 RTC_DCHECK (res); | |
kwiberg-webrtc
2017/02/07 09:39:49
Spurious space again. Doesn't clang-format fix the
nisse-webrtc
2017/02/07 10:48:16
I'll run git cl format for the next patchset. I of
| |
1479 | 1482 |
1480 // If we're sending real data, request a channel bind that we can use later. | 1483 // If we're sending real data, request a channel bind that we can use later. |
1481 if (state_ == STATE_UNBOUND && payload) { | 1484 if (state_ == STATE_UNBOUND && payload) { |
1482 SendChannelBindRequest(0); | 1485 SendChannelBindRequest(0); |
1483 state_ = STATE_BINDING; | 1486 state_ = STATE_BINDING; |
1484 } | 1487 } |
1485 } else { | 1488 } else { |
1486 // If the channel is bound, we can send the data as a Channel Message. | 1489 // If the channel is bound, we can send the data as a Channel Message. |
1487 buf.WriteUInt16(channel_id_); | 1490 buf.WriteUInt16(channel_id_); |
1488 buf.WriteUInt16(static_cast<uint16_t>(size)); | 1491 buf.WriteUInt16(static_cast<uint16_t>(size)); |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1549 } else { | 1552 } else { |
1550 state_ = STATE_UNBOUND; | 1553 state_ = STATE_UNBOUND; |
1551 port_->FailAndPruneConnection(ext_addr_); | 1554 port_->FailAndPruneConnection(ext_addr_); |
1552 } | 1555 } |
1553 } | 1556 } |
1554 void TurnEntry::OnChannelBindTimeout() { | 1557 void TurnEntry::OnChannelBindTimeout() { |
1555 state_ = STATE_UNBOUND; | 1558 state_ = STATE_UNBOUND; |
1556 port_->FailAndPruneConnection(ext_addr_); | 1559 port_->FailAndPruneConnection(ext_addr_); |
1557 } | 1560 } |
1558 } // namespace cricket | 1561 } // namespace cricket |
OLD | NEW |