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

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

Issue 366863002: Land Recent QUIC Changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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
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 #ifndef NET_QUIC_QUIC_PROTOCOL_H_ 5 #ifndef NET_QUIC_QUIC_PROTOCOL_H_
6 #define NET_QUIC_QUIC_PROTOCOL_H_ 6 #define NET_QUIC_QUIC_PROTOCOL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <limits> 9 #include <limits>
10 #include <map> 10 #include <map>
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after
271 // The available versions of QUIC. Guaranteed that the integer value of the enum 271 // The available versions of QUIC. Guaranteed that the integer value of the enum
272 // will match the version number. 272 // will match the version number.
273 // When adding a new version to this enum you should add it to 273 // When adding a new version to this enum you should add it to
274 // kSupportedQuicVersions (if appropriate), and also add a new case to the 274 // kSupportedQuicVersions (if appropriate), and also add a new case to the
275 // helper methods QuicVersionToQuicTag, QuicTagToQuicVersion, and 275 // helper methods QuicVersionToQuicTag, QuicTagToQuicVersion, and
276 // QuicVersionToString. 276 // QuicVersionToString.
277 enum QuicVersion { 277 enum QuicVersion {
278 // Special case to indicate unknown/unsupported QUIC version. 278 // Special case to indicate unknown/unsupported QUIC version.
279 QUIC_VERSION_UNSUPPORTED = 0, 279 QUIC_VERSION_UNSUPPORTED = 0,
280 280
281 QUIC_VERSION_15 = 15, 281 QUIC_VERSION_15 = 15, // Revived packets in ReceivedPacketInfo.
282 QUIC_VERSION_16 = 16, 282 QUIC_VERSION_16 = 16, // STOP_WAITING frame.
283 QUIC_VERSION_18 = 18, 283 QUIC_VERSION_18 = 18, // PING frame.
284 QUIC_VERSION_19 = 19, 284 QUIC_VERSION_19 = 19, // Session level flow control.
285 QUIC_VERSION_20 = 20, // Current version. 285 QUIC_VERSION_20 = 20, // Independent stream/session flow control windows.
wtc 2014/07/02 22:56:48 In these two comments, did you mean "session level
ramant (doing other things) 2014/07/16 19:43:36 Done.
286 QUIC_VERSION_21 = 21, // Headers/crypto streams are flow controlled.
286 }; 287 };
287 288
288 // This vector contains QUIC versions which we currently support. 289 // This vector contains QUIC versions which we currently support.
289 // This should be ordered such that the highest supported version is the first 290 // This should be ordered such that the highest supported version is the first
290 // element, with subsequent elements in descending order (versions can be 291 // element, with subsequent elements in descending order (versions can be
291 // skipped as necessary). 292 // skipped as necessary).
292 // 293 //
293 // IMPORTANT: if you are addding to this list, follow the instructions at 294 // IMPORTANT: if you are addding to this list, follow the instructions at
294 // http://sites/quic/adding-and-removing-versions 295 // http://sites/quic/adding-and-removing-versions
295 static const QuicVersion kSupportedQuicVersions[] = {QUIC_VERSION_20, 296 static const QuicVersion kSupportedQuicVersions[] = {QUIC_VERSION_21,
297 QUIC_VERSION_20,
296 QUIC_VERSION_19, 298 QUIC_VERSION_19,
297 QUIC_VERSION_18, 299 QUIC_VERSION_18,
298 QUIC_VERSION_16, 300 QUIC_VERSION_16,
299 QUIC_VERSION_15}; 301 QUIC_VERSION_15};
300 302
301 typedef std::vector<QuicVersion> QuicVersionVector; 303 typedef std::vector<QuicVersion> QuicVersionVector;
302 304
303 // Returns a vector of QUIC versions in kSupportedQuicVersions. 305 // Returns a vector of QUIC versions in kSupportedQuicVersions.
304 NET_EXPORT_PRIVATE QuicVersionVector QuicSupportedVersions(); 306 NET_EXPORT_PRIVATE QuicVersionVector QuicSupportedVersions();
305 307
(...skipping 759 matching lines...) Expand 10 before | Expand all | Expand 10 after
1065 // Stores the sequence numbers of all transmissions of this packet. 1067 // Stores the sequence numbers of all transmissions of this packet.
1066 // Can never be null. 1068 // Can never be null.
1067 SequenceNumberSet* all_transmissions; 1069 SequenceNumberSet* all_transmissions;
1068 // In flight packets have not been abandoned or lost. 1070 // In flight packets have not been abandoned or lost.
1069 bool in_flight; 1071 bool in_flight;
1070 }; 1072 };
1071 1073
1072 } // namespace net 1074 } // namespace net
1073 1075
1074 #endif // NET_QUIC_QUIC_PROTOCOL_H_ 1076 #endif // NET_QUIC_QUIC_PROTOCOL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698