OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/quic/quic_protocol.h" | 5 #include "net/quic/quic_protocol.h" |
6 | 6 |
7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
8 #include "net/quic/quic_utils.h" | 8 #include "net/quic/quic_utils.h" |
9 | 9 |
10 using base::StringPiece; | 10 using base::StringPiece; |
11 using std::map; | 11 using std::map; |
12 using std::numeric_limits; | 12 using std::numeric_limits; |
13 using std::ostream; | 13 using std::ostream; |
14 using std::string; | 14 using std::string; |
15 | 15 |
16 namespace net { | 16 namespace net { |
17 | 17 |
18 size_t GetPacketHeaderSize(QuicPacketHeader header) { | 18 size_t GetPacketHeaderSize(const QuicPacketHeader& header) { |
19 return GetPacketHeaderSize(header.public_header.guid_length, | 19 return GetPacketHeaderSize(header.public_header.guid_length, |
20 header.public_header.version_flag, | 20 header.public_header.version_flag, |
21 header.public_header.sequence_number_length, | 21 header.public_header.sequence_number_length, |
22 header.is_in_fec_group); | 22 header.is_in_fec_group); |
23 } | 23 } |
24 | 24 |
25 size_t GetPacketHeaderSize(QuicGuidLength guid_length, | 25 size_t GetPacketHeaderSize(QuicGuidLength guid_length, |
26 bool include_version, | 26 bool include_version, |
27 QuicSequenceNumberLength sequence_number_length, | 27 QuicSequenceNumberLength sequence_number_length, |
28 InFecGroup is_in_fec_group) { | 28 InFecGroup is_in_fec_group) { |
29 return kPublicFlagsSize + guid_length + | 29 return kPublicFlagsSize + guid_length + |
30 (include_version ? kQuicVersionSize : 0) + sequence_number_length + | 30 (include_version ? kQuicVersionSize : 0) + sequence_number_length + |
31 kPrivateFlagsSize + (is_in_fec_group == IN_FEC_GROUP ? kFecGroupSize : 0); | 31 kPrivateFlagsSize + (is_in_fec_group == IN_FEC_GROUP ? kFecGroupSize : 0); |
32 } | 32 } |
33 | 33 |
34 size_t GetPublicResetPacketSize() { | |
35 return kPublicFlagsSize + PACKET_8BYTE_GUID + kPublicResetNonceSize + | |
36 PACKET_6BYTE_SEQUENCE_NUMBER; | |
37 } | |
38 | |
39 size_t GetStartOfFecProtectedData( | 34 size_t GetStartOfFecProtectedData( |
40 QuicGuidLength guid_length, | 35 QuicGuidLength guid_length, |
41 bool include_version, | 36 bool include_version, |
42 QuicSequenceNumberLength sequence_number_length) { | 37 QuicSequenceNumberLength sequence_number_length) { |
43 return GetPacketHeaderSize( | 38 return GetPacketHeaderSize( |
44 guid_length, include_version, sequence_number_length, IN_FEC_GROUP); | 39 guid_length, include_version, sequence_number_length, IN_FEC_GROUP); |
45 } | 40 } |
46 | 41 |
47 size_t GetStartOfEncryptedData( | 42 size_t GetStartOfEncryptedData( |
48 QuicGuidLength guid_length, | 43 QuicGuidLength guid_length, |
(...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
535 return os; | 530 return os; |
536 } | 531 } |
537 | 532 |
538 ostream& operator<<(ostream& os, const QuicConsumedData& s) { | 533 ostream& operator<<(ostream& os, const QuicConsumedData& s) { |
539 os << "bytes_consumed: " << s.bytes_consumed | 534 os << "bytes_consumed: " << s.bytes_consumed |
540 << " fin_consumed: " << s.fin_consumed; | 535 << " fin_consumed: " << s.fin_consumed; |
541 return os; | 536 return os; |
542 } | 537 } |
543 | 538 |
544 } // namespace net | 539 } // namespace net |
OLD | NEW |