1
0
mirror of https://github.com/facebookincubator/mvfst.git synced 2026-01-06 03:41:10 +03:00

Draft-22 invariants change

Summary:
Draft-22 onwards uses two one byte length fields to encode connection ID length instead of one one byte length field.

To support this without disrupting existing clients we need to make our parsing version dependent. This diff accomplishes it by special casing the existing Facebook client QUIC version (0xfaceb000), and changing the default Facebook client version going forward to 0xfaceb001.

Note that this diff also changes the behavior of the ticket transport parameters. When we changed from draft-18 to draft-19 transport parameters I apparently forgot to update the ticket transport parameters to the new format.

Reviewed By: yangchi

Differential Revision: D16205090

fbshipit-source-id: e74a92fa959d308f4bb43bad76e58d4b58d07322
This commit is contained in:
Matt Joras
2019-07-16 17:55:29 -07:00
committed by Facebook Github Bot
parent 696cc226a2
commit 2f528e68c0
31 changed files with 290 additions and 179 deletions

View File

@@ -327,6 +327,8 @@ std::string toString(QuicVersion version) {
switch (version) {
case QuicVersion::VERSION_NEGOTIATION:
return "VERSION_NEGOTIATION";
case QuicVersion::MVFST_OLD:
return "MVFST_OLD";
case QuicVersion::MVFST:
return "MVFST";
case QuicVersion::QUIC_DRAFT: