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

Side by Side Diff: net/quic/quic_protocol.cc

Issue 157803007: Land Recent QUIC Changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: win_x64 compiler error fix Created 6 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 | Annotate | Revision Log
« no previous file with comments | « net/quic/quic_protocol.h ('k') | net/quic/quic_received_packet_manager.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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;
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 } 150 }
151 151
152 QuicTag QuicVersionToQuicTag(const QuicVersion version) { 152 QuicTag QuicVersionToQuicTag(const QuicVersion version) {
153 switch (version) { 153 switch (version) {
154 case QUIC_VERSION_12: 154 case QUIC_VERSION_12:
155 return MakeQuicTag('Q', '0', '1', '2'); 155 return MakeQuicTag('Q', '0', '1', '2');
156 case QUIC_VERSION_13: 156 case QUIC_VERSION_13:
157 return MakeQuicTag('Q', '0', '1', '3'); 157 return MakeQuicTag('Q', '0', '1', '3');
158 case QUIC_VERSION_14: 158 case QUIC_VERSION_14:
159 return MakeQuicTag('Q', '0', '1', '4'); 159 return MakeQuicTag('Q', '0', '1', '4');
160 case QUIC_VERSION_15:
161 return MakeQuicTag('Q', '0', '1', '5');
160 default: 162 default:
161 // This shold be an ERROR because we should never attempt to convert an 163 // This shold be an ERROR because we should never attempt to convert an
162 // invalid QuicVersion to be written to the wire. 164 // invalid QuicVersion to be written to the wire.
163 LOG(ERROR) << "Unsupported QuicVersion: " << version; 165 LOG(ERROR) << "Unsupported QuicVersion: " << version;
164 return 0; 166 return 0;
165 } 167 }
166 } 168 }
167 169
168 QuicVersion QuicTagToQuicVersion(const QuicTag version_tag) { 170 QuicVersion QuicTagToQuicVersion(const QuicTag version_tag) {
169 for (size_t i = 0; i < arraysize(kSupportedQuicVersions); ++i) { 171 for (size_t i = 0; i < arraysize(kSupportedQuicVersions); ++i) {
170 if (version_tag == QuicVersionToQuicTag(kSupportedQuicVersions[i])) { 172 if (version_tag == QuicVersionToQuicTag(kSupportedQuicVersions[i])) {
171 return kSupportedQuicVersions[i]; 173 return kSupportedQuicVersions[i];
172 } 174 }
173 } 175 }
174 // Reading from the client so this should not be considered an ERROR. 176 // Reading from the client so this should not be considered an ERROR.
175 DVLOG(1) << "Unsupported QuicTag version: " 177 DVLOG(1) << "Unsupported QuicTag version: "
176 << QuicUtils::TagToString(version_tag); 178 << QuicUtils::TagToString(version_tag);
177 return QUIC_VERSION_UNSUPPORTED; 179 return QUIC_VERSION_UNSUPPORTED;
178 } 180 }
179 181
180 #define RETURN_STRING_LITERAL(x) \ 182 #define RETURN_STRING_LITERAL(x) \
181 case x: \ 183 case x: \
182 return #x 184 return #x
183 185
184 string QuicVersionToString(const QuicVersion version) { 186 string QuicVersionToString(const QuicVersion version) {
185 switch (version) { 187 switch (version) {
186 RETURN_STRING_LITERAL(QUIC_VERSION_12); 188 RETURN_STRING_LITERAL(QUIC_VERSION_12);
187 RETURN_STRING_LITERAL(QUIC_VERSION_13); 189 RETURN_STRING_LITERAL(QUIC_VERSION_13);
188 RETURN_STRING_LITERAL(QUIC_VERSION_14); 190 RETURN_STRING_LITERAL(QUIC_VERSION_14);
191 RETURN_STRING_LITERAL(QUIC_VERSION_15);
189 default: 192 default:
190 return "QUIC_VERSION_UNSUPPORTED"; 193 return "QUIC_VERSION_UNSUPPORTED";
191 } 194 }
192 } 195 }
193 196
194 string QuicVersionVectorToString(const QuicVersionVector& versions) { 197 string QuicVersionVectorToString(const QuicVersionVector& versions) {
195 string result = ""; 198 string result = "";
196 for (size_t i = 0; i < versions.size(); ++i) { 199 for (size_t i = 0; i < versions.size(); ++i) {
197 if (i != 0) { 200 if (i != 0) {
198 result.append(","); 201 result.append(",");
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 356
354 ostream& operator<<(ostream& os, const ReceivedPacketInfo& received_info) { 357 ostream& operator<<(ostream& os, const ReceivedPacketInfo& received_info) {
355 os << "entropy_hash: " << static_cast<int>(received_info.entropy_hash) 358 os << "entropy_hash: " << static_cast<int>(received_info.entropy_hash)
356 << " largest_observed: " << received_info.largest_observed 359 << " largest_observed: " << received_info.largest_observed
357 << " missing_packets: [ "; 360 << " missing_packets: [ ";
358 for (SequenceNumberSet::const_iterator it = 361 for (SequenceNumberSet::const_iterator it =
359 received_info.missing_packets.begin(); 362 received_info.missing_packets.begin();
360 it != received_info.missing_packets.end(); ++it) { 363 it != received_info.missing_packets.end(); ++it) {
361 os << *it << " "; 364 os << *it << " ";
362 } 365 }
366 os << " ] revived_packets: [ ";
367 for (SequenceNumberSet::const_iterator it =
368 received_info.revived_packets.begin();
369 it != received_info.revived_packets.end(); ++it) {
370 os << *it << " ";
371 }
363 os << " ] "; 372 os << " ] ";
364 return os; 373 return os;
365 } 374 }
366 375
367 ostream& operator<<(ostream& os, const QuicFrame& frame) { 376 ostream& operator<<(ostream& os, const QuicFrame& frame) {
368 switch (frame.type) { 377 switch (frame.type) {
369 case PADDING_FRAME: { 378 case PADDING_FRAME: {
370 os << "type { PADDING_FRAME } "; 379 os << "type { PADDING_FRAME } ";
371 break; 380 break;
372 } 381 }
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 return os; 713 return os;
705 } 714 }
706 715
707 WriteResult::WriteResult(WriteStatus status, 716 WriteResult::WriteResult(WriteStatus status,
708 int bytes_written_or_error_code) 717 int bytes_written_or_error_code)
709 : status(status), 718 : status(status),
710 bytes_written(bytes_written_or_error_code) { 719 bytes_written(bytes_written_or_error_code) {
711 } 720 }
712 721
713 } // namespace net 722 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_protocol.h ('k') | net/quic/quic_received_packet_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698