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

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

Issue 1362503003: Use suffixed {uint,int}{8,16,32,64}_t types. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: rebase + revert basictypes.h (to be landed separately just in case of a revert due to unexpected us… Created 5 years, 2 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 2011 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2011 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 13 matching lines...) Expand all
24 // We don't pull the RTP constants from rtputils.h, to avoid a layer violation. 24 // We don't pull the RTP constants from rtputils.h, to avoid a layer violation.
25 static const size_t kDtlsRecordHeaderLen = 13; 25 static const size_t kDtlsRecordHeaderLen = 13;
26 static const size_t kMaxDtlsPacketLen = 2048; 26 static const size_t kMaxDtlsPacketLen = 2048;
27 static const size_t kMinRtpPacketLen = 12; 27 static const size_t kMinRtpPacketLen = 12;
28 28
29 // Maximum number of pending packets in the queue. Packets are read immediately 29 // Maximum number of pending packets in the queue. Packets are read immediately
30 // after they have been written, so a capacity of "1" is sufficient. 30 // after they have been written, so a capacity of "1" is sufficient.
31 static const size_t kMaxPendingPackets = 1; 31 static const size_t kMaxPendingPackets = 1;
32 32
33 static bool IsDtlsPacket(const char* data, size_t len) { 33 static bool IsDtlsPacket(const char* data, size_t len) {
34 const uint8* u = reinterpret_cast<const uint8*>(data); 34 const uint8_t* u = reinterpret_cast<const uint8_t*>(data);
35 return (len >= kDtlsRecordHeaderLen && (u[0] > 19 && u[0] < 64)); 35 return (len >= kDtlsRecordHeaderLen && (u[0] > 19 && u[0] < 64));
36 } 36 }
37 static bool IsRtpPacket(const char* data, size_t len) { 37 static bool IsRtpPacket(const char* data, size_t len) {
38 const uint8* u = reinterpret_cast<const uint8*>(data); 38 const uint8_t* u = reinterpret_cast<const uint8_t*>(data);
39 return (len >= kMinRtpPacketLen && (u[0] & 0xC0) == 0x80); 39 return (len >= kMinRtpPacketLen && (u[0] & 0xC0) == 0x80);
40 } 40 }
41 41
42 StreamInterfaceChannel::StreamInterfaceChannel(TransportChannel* channel) 42 StreamInterfaceChannel::StreamInterfaceChannel(TransportChannel* channel)
43 : channel_(channel), 43 : channel_(channel),
44 state_(rtc::SS_OPEN), 44 state_(rtc::SS_OPEN),
45 packets_(kMaxPendingPackets, kMaxDtlsPacketLen) { 45 packets_(kMaxPendingPackets, kMaxDtlsPacketLen) {
46 } 46 }
47 47
48 rtc::StreamResult StreamInterfaceChannel::Read(void* buffer, 48 rtc::StreamResult StreamInterfaceChannel::Read(void* buffer,
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 bool DtlsTransportChannelWrapper::GetSslCipherSuite(int* cipher) { 189 bool DtlsTransportChannelWrapper::GetSslCipherSuite(int* cipher) {
190 if (dtls_state_ != STATE_OPEN) { 190 if (dtls_state_ != STATE_OPEN) {
191 return false; 191 return false;
192 } 192 }
193 193
194 return dtls_->GetSslCipherSuite(cipher); 194 return dtls_->GetSslCipherSuite(cipher);
195 } 195 }
196 196
197 bool DtlsTransportChannelWrapper::SetRemoteFingerprint( 197 bool DtlsTransportChannelWrapper::SetRemoteFingerprint(
198 const std::string& digest_alg, 198 const std::string& digest_alg,
199 const uint8* digest, 199 const uint8_t* digest,
200 size_t digest_len) { 200 size_t digest_len) {
201
202 rtc::Buffer remote_fingerprint_value(digest, digest_len); 201 rtc::Buffer remote_fingerprint_value(digest, digest_len);
203 202
204 if (dtls_state_ != STATE_NONE && 203 if (dtls_state_ != STATE_NONE &&
205 remote_fingerprint_value_ == remote_fingerprint_value && 204 remote_fingerprint_value_ == remote_fingerprint_value &&
206 !digest_alg.empty()) { 205 !digest_alg.empty()) {
207 // This may happen during renegotiation. 206 // This may happen during renegotiation.
208 LOG_J(LS_INFO, this) << "Ignoring identical remote DTLS fingerprint"; 207 LOG_J(LS_INFO, this) << "Ignoring identical remote DTLS fingerprint";
209 return true; 208 return true;
210 } 209 }
211 210
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after
563 dtls_state_ = STATE_STARTED; 562 dtls_state_ = STATE_STARTED;
564 } 563 }
565 return true; 564 return true;
566 } 565 }
567 566
568 // Called from OnReadPacket when a DTLS packet is received. 567 // Called from OnReadPacket when a DTLS packet is received.
569 bool DtlsTransportChannelWrapper::HandleDtlsPacket(const char* data, 568 bool DtlsTransportChannelWrapper::HandleDtlsPacket(const char* data,
570 size_t size) { 569 size_t size) {
571 // Sanity check we're not passing junk that 570 // Sanity check we're not passing junk that
572 // just looks like DTLS. 571 // just looks like DTLS.
573 const uint8* tmp_data = reinterpret_cast<const uint8* >(data); 572 const uint8_t* tmp_data = reinterpret_cast<const uint8_t*>(data);
574 size_t tmp_size = size; 573 size_t tmp_size = size;
575 while (tmp_size > 0) { 574 while (tmp_size > 0) {
576 if (tmp_size < kDtlsRecordHeaderLen) 575 if (tmp_size < kDtlsRecordHeaderLen)
577 return false; // Too short for the header 576 return false; // Too short for the header
578 577
579 size_t record_len = (tmp_data[11] << 8) | (tmp_data[12]); 578 size_t record_len = (tmp_data[11] << 8) | (tmp_data[12]);
580 if ((record_len + kDtlsRecordHeaderLen) > tmp_size) 579 if ((record_len + kDtlsRecordHeaderLen) > tmp_size)
581 return false; // Body too short 580 return false; // Body too short
582 581
583 tmp_data += record_len + kDtlsRecordHeaderLen; 582 tmp_data += record_len + kDtlsRecordHeaderLen;
(...skipping 30 matching lines...) Expand all
614 SignalRouteChange(this, candidate); 613 SignalRouteChange(this, candidate);
615 } 614 }
616 615
617 void DtlsTransportChannelWrapper::OnConnectionRemoved( 616 void DtlsTransportChannelWrapper::OnConnectionRemoved(
618 TransportChannelImpl* channel) { 617 TransportChannelImpl* channel) {
619 ASSERT(channel == channel_); 618 ASSERT(channel == channel_);
620 SignalConnectionRemoved(this); 619 SignalConnectionRemoved(this);
621 } 620 }
622 621
623 } // namespace cricket 622 } // namespace cricket
OLDNEW
« no previous file with comments | « webrtc/p2p/base/dtlstransportchannel.h ('k') | webrtc/p2p/base/dtlstransportchannel_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698