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

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

Issue 2176323002: Deprecate FLAGS_quic_disable_pre_30. Remove QUIC versions [25-29]. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@127879468
Patch Set: Created 4 years, 4 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 // 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 <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 // The available versions of QUIC. Guaranteed that the integer value of the enum 352 // The available versions of QUIC. Guaranteed that the integer value of the enum
353 // will match the version number. 353 // will match the version number.
354 // When adding a new version to this enum you should add it to 354 // When adding a new version to this enum you should add it to
355 // kSupportedQuicVersions (if appropriate), and also add a new case to the 355 // kSupportedQuicVersions (if appropriate), and also add a new case to the
356 // helper methods QuicVersionToQuicTag, QuicTagToQuicVersion, and 356 // helper methods QuicVersionToQuicTag, QuicTagToQuicVersion, and
357 // QuicVersionToString. 357 // QuicVersionToString.
358 enum QuicVersion { 358 enum QuicVersion {
359 // Special case to indicate unknown/unsupported QUIC version. 359 // Special case to indicate unknown/unsupported QUIC version.
360 QUIC_VERSION_UNSUPPORTED = 0, 360 QUIC_VERSION_UNSUPPORTED = 0,
361 361
362 QUIC_VERSION_25 = 25, // SPDY/4 header keys, and removal of error_details
363 // from QuicRstStreamFrame
364 QUIC_VERSION_26 = 26, // In CHLO, send XLCT tag containing hash of leaf cert
365 QUIC_VERSION_27 = 27, // Sends a nonce in the SHLO.
366 QUIC_VERSION_28 = 28, // Receiver can refuse to create a requested stream.
367 QUIC_VERSION_29 = 29, // Server and client honor QUIC_STREAM_NO_ERROR.
368 QUIC_VERSION_30 = 30, // Add server side support of cert transparency. 362 QUIC_VERSION_30 = 30, // Add server side support of cert transparency.
369 QUIC_VERSION_31 = 31, // Adds a hash of the client hello to crypto proof. 363 QUIC_VERSION_31 = 31, // Adds a hash of the client hello to crypto proof.
370 QUIC_VERSION_32 = 32, // FEC related fields are removed from wire format. 364 QUIC_VERSION_32 = 32, // FEC related fields are removed from wire format.
371 QUIC_VERSION_33 = 33, // Adds diversification nonces. 365 QUIC_VERSION_33 = 33, // Adds diversification nonces.
372 QUIC_VERSION_34 = 34, // Deprecates entropy, removes private flag from packet 366 QUIC_VERSION_34 = 34, // Deprecates entropy, removes private flag from packet
373 // header, uses new ack and stop waiting wire format. 367 // header, uses new ack and stop waiting wire format.
374 QUIC_VERSION_35 = 35, // Allows endpoints to independently set stream limit. 368 QUIC_VERSION_35 = 35, // Allows endpoints to independently set stream limit.
375 QUIC_VERSION_36 = 36, // Add support to force HOL blocking. 369 QUIC_VERSION_36 = 36, // Add support to force HOL blocking.
376 }; 370 };
377 371
378 // This vector contains QUIC versions which we currently support. 372 // This vector contains QUIC versions which we currently support.
379 // This should be ordered such that the highest supported version is the first 373 // This should be ordered such that the highest supported version is the first
380 // element, with subsequent elements in descending order (versions can be 374 // element, with subsequent elements in descending order (versions can be
381 // skipped as necessary). 375 // skipped as necessary).
382 // 376 //
383 // IMPORTANT: if you are adding to this list, follow the instructions at 377 // IMPORTANT: if you are adding to this list, follow the instructions at
384 // http://sites/quic/adding-and-removing-versions 378 // http://sites/quic/adding-and-removing-versions
385 static const QuicVersion kSupportedQuicVersions[] = { 379 static const QuicVersion kSupportedQuicVersions[] = {
386 QUIC_VERSION_36, QUIC_VERSION_35, QUIC_VERSION_34, QUIC_VERSION_33, 380 QUIC_VERSION_36, QUIC_VERSION_35, QUIC_VERSION_34, QUIC_VERSION_33,
387 QUIC_VERSION_32, QUIC_VERSION_31, QUIC_VERSION_30, QUIC_VERSION_29, 381 QUIC_VERSION_32, QUIC_VERSION_31, QUIC_VERSION_30};
388 QUIC_VERSION_28, QUIC_VERSION_27, QUIC_VERSION_26, QUIC_VERSION_25};
389 382
390 typedef std::vector<QuicVersion> QuicVersionVector; 383 typedef std::vector<QuicVersion> QuicVersionVector;
391 384
392 // Returns a vector of QUIC versions in kSupportedQuicVersions. 385 // Returns a vector of QUIC versions in kSupportedQuicVersions.
393 NET_EXPORT_PRIVATE QuicVersionVector QuicSupportedVersions(); 386 NET_EXPORT_PRIVATE QuicVersionVector QuicSupportedVersions();
394 387
395 // Returns a vector of QUIC versions from |versions| which exclude any versions 388 // Returns a vector of QUIC versions from |versions| which exclude any versions
396 // which are disabled by flags. 389 // which are disabled by flags.
397 NET_EXPORT_PRIVATE QuicVersionVector 390 NET_EXPORT_PRIVATE QuicVersionVector
398 FilterSupportedVersions(QuicVersionVector versions); 391 FilterSupportedVersions(QuicVersionVector versions);
(...skipping 1105 matching lines...) Expand 10 before | Expand all | Expand 10 after
1504 : iov(iov), iov_count(iov_count), total_length(total_length) {} 1497 : iov(iov), iov_count(iov_count), total_length(total_length) {}
1505 1498
1506 const struct iovec* iov; 1499 const struct iovec* iov;
1507 const int iov_count; 1500 const int iov_count;
1508 const size_t total_length; 1501 const size_t total_length;
1509 }; 1502 };
1510 1503
1511 } // namespace net 1504 } // namespace net
1512 1505
1513 #endif // NET_QUIC_QUIC_PROTOCOL_H_ 1506 #endif // NET_QUIC_QUIC_PROTOCOL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698