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

Unified Diff: net/quic/quic_framer_test.cc

Issue 1904213002: QUIC: support diversified keys with version 33. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@hkdf
Patch Set: Rebase Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_framer.cc ('k') | net/quic/quic_packet_creator.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_framer_test.cc
diff --git a/net/quic/quic_framer_test.cc b/net/quic/quic_framer_test.cc
index 16a2159d371a21f7d02e82754040eecedcedbac0..4cc1cc0426b3cc93d468ba939b696f0fecd16f75 100644
--- a/net/quic/quic_framer_test.cc
+++ b/net/quic/quic_framer_test.cc
@@ -151,6 +151,13 @@ class TestDecrypter : public QuicDecrypter {
~TestDecrypter() override {}
bool SetKey(StringPiece key) override { return true; }
bool SetNoncePrefix(StringPiece nonce_prefix) override { return true; }
+ bool SetPreliminaryKey(StringPiece key) override {
+ QUIC_BUG << "should not be called";
+ return false;
+ }
+ bool SetDiversificationNonce(DiversificationNonce key) override {
+ return true;
+ }
bool DecryptPacket(QuicPathId path_id,
QuicPacketNumber packet_number,
StringPiece associated_data,
@@ -381,7 +388,8 @@ class QuicFramerTest : public ::testing::TestWithParam<QuicVersion> {
bool CheckDecryption(const QuicEncryptedPacket& encrypted,
bool includes_version,
- bool includes_path_id) {
+ bool includes_path_id,
+ bool includes_diversification_nonce) {
if (visitor_.header_->packet_number != decrypter_->packet_number_) {
LOG(ERROR) << "Decrypted incorrect packet number. expected "
<< visitor_.header_->packet_number
@@ -390,18 +398,20 @@ class QuicFramerTest : public ::testing::TestWithParam<QuicVersion> {
}
if (QuicFramer::GetAssociatedDataFromEncryptedPacket(
encrypted, PACKET_8BYTE_CONNECTION_ID, includes_version,
- includes_path_id,
+ includes_path_id, includes_diversification_nonce,
PACKET_6BYTE_PACKET_NUMBER) != decrypter_->associated_data_) {
LOG(ERROR) << "Decrypted incorrect associated data. expected "
<< QuicFramer::GetAssociatedDataFromEncryptedPacket(
encrypted, PACKET_8BYTE_CONNECTION_ID, includes_version,
- includes_path_id, PACKET_6BYTE_PACKET_NUMBER)
+ includes_path_id, includes_diversification_nonce,
+ PACKET_6BYTE_PACKET_NUMBER)
<< " actual: " << decrypter_->associated_data_;
return false;
}
- StringPiece ciphertext(encrypted.AsStringPiece().substr(
- GetStartOfEncryptedData(PACKET_8BYTE_CONNECTION_ID, includes_version,
- includes_path_id, PACKET_6BYTE_PACKET_NUMBER)));
+ StringPiece ciphertext(
+ encrypted.AsStringPiece().substr(GetStartOfEncryptedData(
+ PACKET_8BYTE_CONNECTION_ID, includes_version, includes_path_id,
+ includes_diversification_nonce, PACKET_6BYTE_PACKET_NUMBER)));
if (ciphertext != decrypter_->ciphertext_) {
LOG(ERROR) << "Decrypted incorrect ciphertext data. expected "
<< ciphertext << " actual: " << decrypter_->ciphertext_;
@@ -443,8 +453,9 @@ class QuicFramerTest : public ::testing::TestWithParam<QuicVersion> {
}
CheckProcessingFails(
packet,
- i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, include_version,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ i + GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, include_version, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_STREAM_DATA);
}
}
@@ -599,7 +610,7 @@ TEST_P(QuicFramerTest, LargePacket) {
// clang-format off
unsigned char packet[kMaxPacketSize + 1] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -607,15 +618,14 @@ TEST_P(QuicFramerTest, LargePacket) {
// private flags
0x00,
};
-
- memset(packet + GetPacketHeaderSize(
- PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
- PACKET_6BYTE_PACKET_NUMBER), 0,
- kMaxPacketSize - GetPacketHeaderSize(
- PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
- PACKET_6BYTE_PACKET_NUMBER) + 1);
// clang-format on
+ const size_t header_size = GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_6BYTE_PACKET_NUMBER);
+
+ memset(packet + header_size, 0, kMaxPacketSize - header_size);
+
QuicEncryptedPacket encrypted(AsChars(packet), arraysize(packet), false);
EXPECT_DFATAL(framer_.ProcessPacket(encrypted), "Packet too large:1");
@@ -630,7 +640,7 @@ TEST_P(QuicFramerTest, PacketHeader) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -658,7 +668,8 @@ TEST_P(QuicFramerTest, PacketHeader) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -674,110 +685,6 @@ TEST_P(QuicFramerTest, PacketHeader) {
}
}
-TEST_P(QuicFramerTest, PacketHeaderWith4ByteConnectionId) {
- QuicFramerPeer::SetLastSerializedConnectionId(&framer_, kConnectionId);
-
- // clang-format off
- unsigned char packet[] = {
- // public flags (4 byte connection_id)
- 0x38,
- // connection_id
- 0x10, 0x32, 0x54, 0x76,
- // packet number
- 0xBC, 0x9A, 0x78, 0x56, 0x34, 0x12,
- // private flags
- 0x00,
- };
- // clang-format on
-
- QuicEncryptedPacket encrypted(AsChars(packet), arraysize(packet), false);
- EXPECT_FALSE(framer_.ProcessPacket(encrypted));
- EXPECT_EQ(QUIC_MISSING_PAYLOAD, framer_.error());
- ASSERT_TRUE(visitor_.header_.get());
- EXPECT_EQ(kConnectionId, visitor_.header_->public_header.connection_id);
- EXPECT_FALSE(visitor_.header_->public_header.multipath_flag);
- EXPECT_FALSE(visitor_.header_->public_header.reset_flag);
- EXPECT_FALSE(visitor_.header_->public_header.version_flag);
- EXPECT_FALSE(visitor_.header_->fec_flag);
- EXPECT_FALSE(visitor_.header_->entropy_flag);
- EXPECT_EQ(0, visitor_.header_->entropy_hash);
- EXPECT_EQ(kPacketNumber, visitor_.header_->packet_number);
- EXPECT_EQ(NOT_IN_FEC_GROUP, visitor_.header_->is_in_fec_group);
- EXPECT_EQ(0u, visitor_.header_->fec_group);
-
- // Now test framing boundaries.
- for (size_t i = 0;
- i < GetPacketHeaderSize(PACKET_4BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
- ++i) {
- string expected_error;
- if (i < kConnectionIdOffset) {
- expected_error = "Unable to read public flags.";
- } else if (i < GetPacketNumberOffset(PACKET_4BYTE_CONNECTION_ID,
- !kIncludeVersion, !kIncludePathId)) {
- expected_error = "Unable to read ConnectionId.";
- } else if (i < GetPrivateFlagsOffset(PACKET_4BYTE_CONNECTION_ID,
- !kIncludeVersion, !kIncludePathId)) {
- expected_error = "Unable to read packet number.";
- } else {
- expected_error = "Unable to read private flags.";
- }
- CheckProcessingFails(packet, i, expected_error, QUIC_INVALID_PACKET_HEADER);
- }
-}
-
-TEST_P(QuicFramerTest, PacketHeader1ByteConnectionId) {
- QuicFramerPeer::SetLastSerializedConnectionId(&framer_, kConnectionId);
-
- // clang-format off
- unsigned char packet[] = {
- // public flags (1 byte connection_id)
- 0x34,
- // connection_id
- 0x10,
- // packet number
- 0xBC, 0x9A, 0x78, 0x56, 0x34, 0x12,
- // private flags
- 0x00,
- };
- // clang-format on
-
- QuicEncryptedPacket encrypted(AsChars(packet), arraysize(packet), false);
- EXPECT_FALSE(framer_.ProcessPacket(encrypted));
- EXPECT_EQ(QUIC_MISSING_PAYLOAD, framer_.error());
- ASSERT_TRUE(visitor_.header_.get());
- EXPECT_EQ(kConnectionId, visitor_.header_->public_header.connection_id);
- EXPECT_FALSE(visitor_.header_->public_header.multipath_flag);
- EXPECT_FALSE(visitor_.header_->public_header.reset_flag);
- EXPECT_FALSE(visitor_.header_->public_header.version_flag);
- EXPECT_FALSE(visitor_.header_->fec_flag);
- EXPECT_FALSE(visitor_.header_->entropy_flag);
- EXPECT_EQ(0, visitor_.header_->entropy_hash);
- EXPECT_EQ(kPacketNumber, visitor_.header_->packet_number);
- EXPECT_EQ(NOT_IN_FEC_GROUP, visitor_.header_->is_in_fec_group);
- EXPECT_EQ(0u, visitor_.header_->fec_group);
-
- // Now test framing boundaries.
- for (size_t i = 0;
- i < GetPacketHeaderSize(PACKET_1BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
- ++i) {
- string expected_error;
- if (i < kConnectionIdOffset) {
- expected_error = "Unable to read public flags.";
- } else if (i < GetPacketNumberOffset(PACKET_1BYTE_CONNECTION_ID,
- !kIncludeVersion, !kIncludePathId)) {
- expected_error = "Unable to read ConnectionId.";
- } else if (i < GetPrivateFlagsOffset(PACKET_1BYTE_CONNECTION_ID,
- !kIncludeVersion, !kIncludePathId)) {
- expected_error = "Unable to read packet number.";
- } else {
- expected_error = "Unable to read private flags.";
- }
- CheckProcessingFails(packet, i, expected_error, QUIC_INVALID_PACKET_HEADER);
- }
-}
-
TEST_P(QuicFramerTest, PacketHeaderWith0ByteConnectionId) {
QuicFramerPeer::SetLastSerializedConnectionId(&framer_, kConnectionId);
@@ -812,7 +719,8 @@ TEST_P(QuicFramerTest, PacketHeaderWith0ByteConnectionId) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_0BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -834,7 +742,7 @@ TEST_P(QuicFramerTest, PacketHeaderWithVersionFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version)
- 0x3D,
+ 0x39,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// version tag
@@ -865,7 +773,8 @@ TEST_P(QuicFramerTest, PacketHeaderWithVersionFlag) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -887,7 +796,7 @@ TEST_P(QuicFramerTest, PacketHeaderWithMultipathFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -903,7 +812,8 @@ TEST_P(QuicFramerTest, PacketHeaderWithMultipathFlag) {
EXPECT_FALSE(framer_.ProcessPacket(encrypted));
EXPECT_EQ(QUIC_MISSING_PAYLOAD, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(kConnectionId, visitor_.header_->public_header.connection_id);
EXPECT_TRUE(visitor_.header_->public_header.multipath_flag);
EXPECT_FALSE(visitor_.header_->public_header.reset_flag);
@@ -919,7 +829,8 @@ TEST_P(QuicFramerTest, PacketHeaderWithMultipathFlag) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
+ kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -942,7 +853,7 @@ TEST_P(QuicFramerTest, PacketHeaderWithBothVersionFlagAndMultipathFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version)
- 0x7D,
+ 0x79,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// version tag
@@ -960,7 +871,8 @@ TEST_P(QuicFramerTest, PacketHeaderWithBothVersionFlagAndMultipathFlag) {
EXPECT_FALSE(framer_.ProcessPacket(encrypted));
EXPECT_EQ(QUIC_MISSING_PAYLOAD, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, kIncludeVersion, kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, kIncludeVersion, kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(kConnectionId, visitor_.header_->public_header.connection_id);
EXPECT_TRUE(visitor_.header_->public_header.multipath_flag);
EXPECT_FALSE(visitor_.header_->public_header.reset_flag);
@@ -977,7 +889,8 @@ TEST_P(QuicFramerTest, PacketHeaderWithBothVersionFlagAndMultipathFlag) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
+ kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -1003,7 +916,7 @@ TEST_P(QuicFramerTest, PacketHeaderWithPathChange) {
// clang-format off
unsigned char packet1[] = {
// public flags (version)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -1031,7 +944,7 @@ TEST_P(QuicFramerTest, PacketHeaderWithPathChange) {
// clang-format off
unsigned char packet2[] = {
// public flags (version)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -1057,7 +970,7 @@ TEST_P(QuicFramerTest, PacketHeaderWithPathChange) {
// clang-format off
unsigned char packet3[] = {
// public flags (version)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -1085,7 +998,7 @@ TEST_P(QuicFramerTest, ReceivedPacketOnClosedPath) {
// clang-format off
unsigned char packet[] = {
// public flags (version)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -1111,7 +1024,7 @@ TEST_P(QuicFramerTest, PacketHeaderWith4BytePacketNumber) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id and 4 byte packet number)
- 0x2C,
+ 0x28,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -1139,7 +1052,8 @@ TEST_P(QuicFramerTest, PacketHeaderWith4BytePacketNumber) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_4BYTE_PACKET_NUMBER);
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_4BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -1162,7 +1076,7 @@ TEST_P(QuicFramerTest, PacketHeaderWith2BytePacketNumber) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id and 2 byte packet number)
- 0x1C,
+ 0x18,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -1190,7 +1104,8 @@ TEST_P(QuicFramerTest, PacketHeaderWith2BytePacketNumber) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_2BYTE_PACKET_NUMBER);
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_2BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -1213,7 +1128,7 @@ TEST_P(QuicFramerTest, PacketHeaderWith1BytePacketNumber) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id and 1 byte packet number)
- 0x0C,
+ 0x08,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -1241,7 +1156,8 @@ TEST_P(QuicFramerTest, PacketHeaderWith1BytePacketNumber) {
// Now test framing boundaries.
for (size_t i = 0;
i < GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_1BYTE_PACKET_NUMBER);
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_1BYTE_PACKET_NUMBER);
++i) {
string expected_error;
if (i < kConnectionIdOffset) {
@@ -1262,7 +1178,7 @@ TEST_P(QuicFramerTest, InvalidPublicFlag) {
// clang-format off
unsigned char packet[] = {
// public flags: all flags set but the public reset flag and version flag.
- 0xFC,
+ 0xF8,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -1285,6 +1201,48 @@ TEST_P(QuicFramerTest, InvalidPublicFlag) {
EXPECT_TRUE(framer_.ProcessPacket(encrypted));
};
+TEST_P(QuicFramerTest, PacketWithDiversificationNonce) {
+ // clang-format off
+ unsigned char packet[] = {
+ // public flags: includes nonce flag
+ 0x7C,
+ // connection_id
+ 0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
+ // nonce
+ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
+ 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
+ 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
+ 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
+ // packet number
+ 0xBC, 0x9A, 0x78, 0x56, 0x34, 0x12,
+ // private flags
+ 0x00,
+
+ // frame type (padding)
+ 0x00,
+ 0x00, 0x00, 0x00, 0x00
+ };
+ // clang-format on
+
+ QuicEncryptedPacket encrypted(AsChars(packet), arraysize(packet), false);
+ QuicFramerPeer::SetPerspective(&framer_, Perspective::IS_CLIENT);
+ if (framer_.version() > QUIC_VERSION_32) {
+ EXPECT_TRUE(framer_.ProcessPacket(encrypted));
+ ASSERT_TRUE(visitor_.public_header_->nonce != nullptr);
+ for (char i = 0; i < 32; ++i) {
+ EXPECT_EQ(i, (*visitor_.public_header_->nonce)[static_cast<int>(i)]);
+ }
+ } else if (framer_.version() < QUIC_VERSION_32) {
+ // Packet is successfully parsed by accident.
+ EXPECT_TRUE(framer_.ProcessPacket(encrypted));
+ ASSERT_TRUE(visitor_.public_header_ != nullptr);
+ } else {
+ EXPECT_FALSE(framer_.ProcessPacket(encrypted));
+ EXPECT_EQ(QUIC_INVALID_PACKET_HEADER, framer_.error());
+ EXPECT_EQ("Illegal private flags value.", framer_.detailed_error());
+ }
+};
+
TEST_P(QuicFramerTest, InvalidPublicFlagWithMatchingVersions) {
// clang-format off
unsigned char packet[] = {
@@ -1314,7 +1272,7 @@ TEST_P(QuicFramerTest, LargePublicFlagWithMismatchedVersions) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id, version flag and an unknown flag)
- 0x7D,
+ 0x79,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1343,7 +1301,7 @@ TEST_P(QuicFramerTest, InvalidPrivateFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1367,7 +1325,7 @@ TEST_P(QuicFramerTest, InvalidFECGroupOffset) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1396,7 +1354,7 @@ TEST_P(QuicFramerTest, PaddingFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1429,14 +1387,16 @@ TEST_P(QuicFramerTest, PaddingFrame) {
EXPECT_TRUE(framer_.ProcessPacket(encrypted));
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(0u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
// A packet with no frames is not acceptable.
CheckProcessingFails(
- packet, GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ packet, GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_6BYTE_PACKET_NUMBER),
"Packet has no frames.", QUIC_MISSING_PAYLOAD);
}
@@ -1444,7 +1404,7 @@ TEST_P(QuicFramerTest, StreamFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1475,7 +1435,8 @@ TEST_P(QuicFramerTest, StreamFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
@@ -1492,7 +1453,7 @@ TEST_P(QuicFramerTest, StreamFrame3ByteStreamId) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1523,7 +1484,8 @@ TEST_P(QuicFramerTest, StreamFrame3ByteStreamId) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
@@ -1542,7 +1504,7 @@ TEST_P(QuicFramerTest, StreamFrame2ByteStreamId) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1573,7 +1535,8 @@ TEST_P(QuicFramerTest, StreamFrame2ByteStreamId) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
@@ -1592,7 +1555,7 @@ TEST_P(QuicFramerTest, StreamFrame1ByteStreamId) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1623,7 +1586,8 @@ TEST_P(QuicFramerTest, StreamFrame1ByteStreamId) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
@@ -1642,7 +1606,7 @@ TEST_P(QuicFramerTest, StreamFrameWithVersion) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x3D,
+ 0x39,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1677,7 +1641,8 @@ TEST_P(QuicFramerTest, StreamFrameWithVersion) {
ASSERT_TRUE(visitor_.header_.get());
EXPECT_TRUE(visitor_.header_->public_header.version_flag);
EXPECT_EQ(GetParam(), visitor_.header_->public_header.versions[0]);
- EXPECT_TRUE(CheckDecryption(encrypted, kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(1u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
@@ -1696,7 +1661,7 @@ TEST_P(QuicFramerTest, RejectPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1727,7 +1692,8 @@ TEST_P(QuicFramerTest, RejectPacket) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
ASSERT_EQ(0u, visitor_.stream_frames_.size());
EXPECT_EQ(0u, visitor_.ack_frames_.size());
@@ -1739,7 +1705,7 @@ TEST_P(QuicFramerTest, RejectPublicHeader) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -1758,7 +1724,7 @@ TEST_P(QuicFramerTest, AckFrameTwoTimestamp) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -1805,7 +1771,8 @@ TEST_P(QuicFramerTest, AckFrameTwoTimestamp) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -1873,7 +1840,8 @@ TEST_P(QuicFramerTest, AckFrameTwoTimestamp) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -1927,7 +1895,8 @@ TEST_P(QuicFramerTest, AckFrameTwoTimestampVersion32) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -1986,7 +1955,8 @@ TEST_P(QuicFramerTest, AckFrameTwoTimestampVersion32) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -1995,7 +1965,7 @@ TEST_P(QuicFramerTest, AckFrameOneTimestamp) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -2038,7 +2008,8 @@ TEST_P(QuicFramerTest, AckFrameOneTimestamp) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2096,7 +2067,8 @@ TEST_P(QuicFramerTest, AckFrameOneTimestamp) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -2146,7 +2118,8 @@ TEST_P(QuicFramerTest, AckFrameOneTimestampVersion32) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2195,7 +2168,8 @@ TEST_P(QuicFramerTest, AckFrameOneTimestampVersion32) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -2243,7 +2217,8 @@ TEST_P(QuicFramerTest, AckFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2293,7 +2268,8 @@ TEST_P(QuicFramerTest, AckFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -2302,7 +2278,7 @@ TEST_P(QuicFramerTest, AckFrameVersion32) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -2339,7 +2315,8 @@ TEST_P(QuicFramerTest, AckFrameVersion32) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2380,7 +2357,8 @@ TEST_P(QuicFramerTest, AckFrameVersion32) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -2389,7 +2367,7 @@ TEST_P(QuicFramerTest, AckFrameRevivedPackets) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -2432,7 +2410,8 @@ TEST_P(QuicFramerTest, AckFrameRevivedPackets) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2488,7 +2467,8 @@ TEST_P(QuicFramerTest, AckFrameRevivedPackets) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_ACK_DATA);
}
}
@@ -2497,7 +2477,8 @@ TEST_P(QuicFramerTest, AckFrameNoNacks) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -2524,7 +2505,8 @@ TEST_P(QuicFramerTest, AckFrameNoNacks) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2548,7 +2530,8 @@ TEST_P(QuicFramerTest, AckFrame500Nacks) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -2593,7 +2576,8 @@ TEST_P(QuicFramerTest, AckFrame500Nacks) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2619,7 +2603,8 @@ TEST_P(QuicFramerTest, AckFrame500NacksVersion32) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -2662,7 +2647,8 @@ TEST_P(QuicFramerTest, AckFrame500NacksVersion32) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.ack_frames_.size());
@@ -2688,7 +2674,7 @@ TEST_P(QuicFramerTest, StopWaitingFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -2714,7 +2700,8 @@ TEST_P(QuicFramerTest, StopWaitingFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
ASSERT_EQ(1u, visitor_.stop_waiting_frames_.size());
@@ -2735,7 +2722,8 @@ TEST_P(QuicFramerTest, StopWaitingFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_STOP_WAITING_DATA);
}
}
@@ -2744,7 +2732,7 @@ TEST_P(QuicFramerTest, RstStreamFrameQuic) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -2773,7 +2761,8 @@ TEST_P(QuicFramerTest, RstStreamFrameQuic) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(kStreamId, visitor_.rst_stream_frame_.stream_id);
EXPECT_EQ(0x01, visitor_.rst_stream_frame_.error_code);
@@ -2795,7 +2784,8 @@ TEST_P(QuicFramerTest, RstStreamFrameQuic) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_RST_STREAM_DATA);
}
}
@@ -2804,7 +2794,7 @@ TEST_P(QuicFramerTest, ConnectionCloseFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -2834,7 +2824,8 @@ TEST_P(QuicFramerTest, ConnectionCloseFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(0u, visitor_.stream_frames_.size());
@@ -2855,7 +2846,8 @@ TEST_P(QuicFramerTest, ConnectionCloseFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_CONNECTION_CLOSE_DATA);
}
}
@@ -2864,7 +2856,7 @@ TEST_P(QuicFramerTest, GoAwayFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -2895,7 +2887,8 @@ TEST_P(QuicFramerTest, GoAwayFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(kStreamId, visitor_.goaway_frame_.last_good_stream_id);
EXPECT_EQ(0x9, visitor_.goaway_frame_.error_code);
@@ -2917,7 +2910,8 @@ TEST_P(QuicFramerTest, GoAwayFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_GOAWAY_DATA);
}
}
@@ -2926,7 +2920,7 @@ TEST_P(QuicFramerTest, WindowUpdateFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -2952,7 +2946,8 @@ TEST_P(QuicFramerTest, WindowUpdateFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(kStreamId, visitor_.window_update_frame_.stream_id);
EXPECT_EQ(kStreamOffset, visitor_.window_update_frame_.byte_offset);
@@ -2969,7 +2964,8 @@ TEST_P(QuicFramerTest, WindowUpdateFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_WINDOW_UPDATE_DATA);
}
}
@@ -2978,7 +2974,7 @@ TEST_P(QuicFramerTest, BlockedFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3001,7 +2997,8 @@ TEST_P(QuicFramerTest, BlockedFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(kStreamId, visitor_.blocked_frame_.stream_id);
@@ -3012,7 +3009,8 @@ TEST_P(QuicFramerTest, BlockedFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_BLOCKED_DATA);
}
}
@@ -3021,7 +3019,7 @@ TEST_P(QuicFramerTest, PingFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3041,7 +3039,8 @@ TEST_P(QuicFramerTest, PingFrame) {
EXPECT_EQ(QUIC_NO_ERROR, framer_.error());
ASSERT_TRUE(visitor_.header_.get());
- EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId));
+ EXPECT_TRUE(CheckDecryption(encrypted, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce));
EXPECT_EQ(1u, visitor_.ping_frames_.size());
@@ -3052,7 +3051,7 @@ TEST_P(QuicFramerTest, PathCloseFrame) {
// clang-format off
unsigned char packet[] = {
// public flags (version)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -3087,7 +3086,8 @@ TEST_P(QuicFramerTest, PathCloseFrame) {
CheckProcessingFails(
packet,
i + GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- kIncludePathId, PACKET_6BYTE_PACKET_NUMBER),
+ kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER),
expected_error, QUIC_INVALID_PATH_CLOSE_DATA);
}
}
@@ -3096,7 +3096,7 @@ TEST_P(QuicFramerTest, PublicResetPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (public reset, 8 byte connection_id)
- 0x0E,
+ 0x0A,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3158,7 +3158,7 @@ TEST_P(QuicFramerTest, PublicResetPacketWithTrailingJunk) {
// clang-format off
unsigned char packet[] = {
// public flags (public reset, 8 byte connection_id)
- 0x0E,
+ 0x0A,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3194,7 +3194,7 @@ TEST_P(QuicFramerTest, PublicResetPacketWithClientAddress) {
// clang-format off
unsigned char packet[] = {
// public flags (public reset, 8 byte connection_id)
- 0x0E,
+ 0x0A,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3265,7 +3265,7 @@ TEST_P(QuicFramerTest, VersionNegotiationPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x3D,
+ 0x39,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3303,7 +3303,7 @@ TEST_P(QuicFramerTest, DropFecPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x38,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3352,7 +3352,8 @@ TEST_P(QuicFramerTest, BuildPaddingFramePacket) {
// clang-format off
unsigned char packet[kMaxPacketSize] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3368,9 +3369,9 @@ TEST_P(QuicFramerTest, BuildPaddingFramePacket) {
};
// clang-format on
- uint64_t header_size =
- GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER);
+ uint64_t header_size = GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_6BYTE_PACKET_NUMBER);
memset(packet + header_size + 1, 0x00, kMaxPacketSize - header_size - 1);
std::unique_ptr<QuicPacket> data(BuildDataPacket(header, frames));
@@ -3400,7 +3401,8 @@ TEST_P(QuicFramerTest, Build4ByteSequenceNumberPaddingFramePacket) {
// clang-format off
unsigned char packet[kMaxPacketSize] = {
// public flags (8 byte connection_id and 4 byte packet number)
- 0x2C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x28 : 0x2C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3415,9 +3417,9 @@ TEST_P(QuicFramerTest, Build4ByteSequenceNumberPaddingFramePacket) {
};
// clang-format on
- uint64_t header_size =
- GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_4BYTE_PACKET_NUMBER);
+ uint64_t header_size = GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_4BYTE_PACKET_NUMBER);
memset(packet + header_size + 1, 0x00, kMaxPacketSize - header_size - 1);
std::unique_ptr<QuicPacket> data(BuildDataPacket(header, frames));
@@ -3447,7 +3449,8 @@ TEST_P(QuicFramerTest, Build2ByteSequenceNumberPaddingFramePacket) {
// clang-format off
unsigned char packet[kMaxPacketSize] = {
// public flags (8 byte connection_id and 2 byte packet number)
- 0x1C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x18 : 0x1C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3462,9 +3465,9 @@ TEST_P(QuicFramerTest, Build2ByteSequenceNumberPaddingFramePacket) {
};
// clang-format on
- uint64_t header_size =
- GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_2BYTE_PACKET_NUMBER);
+ uint64_t header_size = GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_2BYTE_PACKET_NUMBER);
memset(packet + header_size + 1, 0x00, kMaxPacketSize - header_size - 1);
std::unique_ptr<QuicPacket> data(BuildDataPacket(header, frames));
@@ -3494,7 +3497,8 @@ TEST_P(QuicFramerTest, Build1ByteSequenceNumberPaddingFramePacket) {
// clang-format off
unsigned char packet[kMaxPacketSize] = {
// public flags (8 byte connection_id and 1 byte packet number)
- 0x0C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x08 : 0x0C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3509,9 +3513,9 @@ TEST_P(QuicFramerTest, Build1ByteSequenceNumberPaddingFramePacket) {
};
// clang-format on
- uint64_t header_size =
- GetPacketHeaderSize(PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion,
- !kIncludePathId, PACKET_1BYTE_PACKET_NUMBER);
+ uint64_t header_size = GetPacketHeaderSize(
+ PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId,
+ !kIncludeDiversificationNonce, PACKET_1BYTE_PACKET_NUMBER);
memset(packet + header_size + 1, 0x00, kMaxPacketSize - header_size - 1);
std::unique_ptr<QuicPacket> data(BuildDataPacket(header, frames));
@@ -3541,7 +3545,8 @@ TEST_P(QuicFramerTest, BuildStreamFramePacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3592,7 +3597,8 @@ TEST_P(QuicFramerTest, BuildStreamFramePacketWithVersionFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x3D,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x39 : 0x3D),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// version tag
@@ -3643,7 +3649,8 @@ TEST_P(QuicFramerTest, BuildStreamFramePacketWithMultipathFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x7C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x78 : 0x7C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3698,7 +3705,8 @@ TEST_P(QuicFramerTest, BuildStreamFramePacketWithBothVersionAndMultipathFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x7D,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x79 : 0x7D),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -3739,7 +3747,7 @@ TEST_P(QuicFramerTest, BuildVersionNegotiationPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x0D,
+ 0x09,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// version tag
@@ -3811,7 +3819,8 @@ TEST_P(QuicFramerTest, BuildAckFramePacket) {
// clang-format off
unsigned char packet_version32[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -3962,7 +3971,8 @@ TEST_P(QuicFramerTest, BuildTruncatedAckFrameLargePacket) {
// clang-format off
unsigned char packet_version32[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -4076,7 +4086,7 @@ TEST_P(QuicFramerTest, BuildTruncatedAckFrameSmallPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ 0x3C,
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -4108,7 +4118,8 @@ TEST_P(QuicFramerTest, BuildTruncatedAckFrameSmallPacket) {
// clang-format off
unsigned char packet_version32[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// packet number
@@ -4174,7 +4185,8 @@ TEST_P(QuicFramerTest, BuildStopWaitingPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4219,7 +4231,8 @@ TEST_P(QuicFramerTest, BuildRstFramePacketQuic) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4272,7 +4285,8 @@ TEST_P(QuicFramerTest, BuildCloseFramePacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4325,7 +4339,8 @@ TEST_P(QuicFramerTest, BuildGoAwayPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4379,7 +4394,8 @@ TEST_P(QuicFramerTest, BuildWindowUpdatePacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4426,7 +4442,8 @@ TEST_P(QuicFramerTest, BuildBlockedPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4469,7 +4486,8 @@ TEST_P(QuicFramerTest, BuildPingPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4512,7 +4530,8 @@ TEST_P(QuicFramerTest, BuildPathClosePacket) {
// clang-format off
unsigned char packet[] = {
// public flags (version)
- 0x7C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x78 : 0X7C),
// connection_id
0x10, 0x32, 0x54, 0x76, 0x98, 0xBA, 0xDC, 0xFE,
// path_id
@@ -4556,7 +4575,8 @@ TEST_P(QuicFramerTest, BuildMtuDiscoveryPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4590,7 +4610,7 @@ TEST_P(QuicFramerTest, BuildPublicResetPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (public reset, 8 byte ConnectionId)
- 0x0E,
+ 0x0A,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4636,7 +4656,7 @@ TEST_P(QuicFramerTest, BuildPublicResetPacketWithClientAddress) {
// clang-format off
unsigned char packet[] = {
// public flags (public reset, 8 byte ConnectionId)
- 0x0E,
+ 0x0A,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4683,7 +4703,8 @@ TEST_P(QuicFramerTest, EncryptPacket) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4703,7 +4724,8 @@ TEST_P(QuicFramerTest, EncryptPacket) {
std::unique_ptr<QuicPacket> raw(new QuicPacket(
AsChars(packet), arraysize(packet), false, PACKET_8BYTE_CONNECTION_ID,
- !kIncludeVersion, !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER));
+ !kIncludeVersion, !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER));
char buffer[kMaxPacketSize];
size_t encrypted_length =
framer_.EncryptPayload(ENCRYPTION_NONE, kDefaultPathId, packet_number,
@@ -4718,7 +4740,7 @@ TEST_P(QuicFramerTest, EncryptPacketWithVersionFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x3D,
+ 0x39,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4740,7 +4762,8 @@ TEST_P(QuicFramerTest, EncryptPacketWithVersionFlag) {
std::unique_ptr<QuicPacket> raw(new QuicPacket(
AsChars(packet), arraysize(packet), false, PACKET_8BYTE_CONNECTION_ID,
- kIncludeVersion, !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER));
+ kIncludeVersion, !kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER));
char buffer[kMaxPacketSize];
size_t encrypted_length =
framer_.EncryptPayload(ENCRYPTION_NONE, kDefaultPathId, packet_number,
@@ -4755,7 +4778,7 @@ TEST_P(QuicFramerTest, EncryptPacketWithMultipathFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x7C,
+ 0x78,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4777,7 +4800,8 @@ TEST_P(QuicFramerTest, EncryptPacketWithMultipathFlag) {
std::unique_ptr<QuicPacket> raw(new QuicPacket(
AsChars(packet), arraysize(packet), false, PACKET_8BYTE_CONNECTION_ID,
- !kIncludeVersion, kIncludePathId, PACKET_6BYTE_PACKET_NUMBER));
+ !kIncludeVersion, kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER));
char buffer[kMaxPacketSize];
size_t encrypted_length = framer_.EncryptPayload(
ENCRYPTION_NONE, kPathId, packet_number, *raw, buffer, kMaxPacketSize);
@@ -4791,7 +4815,7 @@ TEST_P(QuicFramerTest, EncryptPacketWithBothVersionFlagAndMultipathFlag) {
// clang-format off
unsigned char packet[] = {
// public flags (version, 8 byte connection_id)
- 0x7D,
+ 0x79,
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4815,7 +4839,8 @@ TEST_P(QuicFramerTest, EncryptPacketWithBothVersionFlagAndMultipathFlag) {
std::unique_ptr<QuicPacket> raw(new QuicPacket(
AsChars(packet), arraysize(packet), false, PACKET_8BYTE_CONNECTION_ID,
- kIncludeVersion, kIncludePathId, PACKET_6BYTE_PACKET_NUMBER));
+ kIncludeVersion, kIncludePathId, !kIncludeDiversificationNonce,
+ PACKET_6BYTE_PACKET_NUMBER));
char buffer[kMaxPacketSize];
size_t encrypted_length = framer_.EncryptPayload(
ENCRYPTION_NONE, kPathId, packet_number, *raw, buffer, kMaxPacketSize);
@@ -4953,7 +4978,8 @@ TEST_P(QuicFramerTest, EntropyFlagTest) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
@@ -4990,7 +5016,8 @@ TEST_P(QuicFramerTest, StopPacketProcessing) {
// clang-format off
unsigned char packet[] = {
// public flags (8 byte connection_id)
- 0x3C,
+ static_cast<unsigned char>(
+ framer_.version() > QUIC_VERSION_32 ? 0x38 : 0x3C),
// connection_id
0x10, 0x32, 0x54, 0x76,
0x98, 0xBA, 0xDC, 0xFE,
« no previous file with comments | « net/quic/quic_framer.cc ('k') | net/quic/quic_packet_creator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698