| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/test_tools/quic_test_packet_maker.h" | 5 #include "net/quic/test_tools/quic_test_packet_maker.h" |
| 6 | 6 |
| 7 #include <list> | 7 #include <list> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/memory/ptr_util.h" | 10 #include "base/memory/ptr_util.h" |
| (...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 for (QuicPacketNumber i = ack_least_unacked; i <= largest_received; ++i) { | 260 for (QuicPacketNumber i = ack_least_unacked; i <= largest_received; ++i) { |
| 261 ack.received_packet_times.push_back(make_pair(i, clock_->Now())); | 261 ack.received_packet_times.push_back(make_pair(i, clock_->Now())); |
| 262 } | 262 } |
| 263 if (largest_received > 0 && version_ > QUIC_VERSION_33) { | 263 if (largest_received > 0 && version_ > QUIC_VERSION_33) { |
| 264 ack.missing = false; | 264 ack.missing = false; |
| 265 ack.packets.Add(1, largest_received + 1); | 265 ack.packets.Add(1, largest_received + 1); |
| 266 } | 266 } |
| 267 | 267 |
| 268 QuicFramer framer(SupportedVersions(version_), clock_->Now(), perspective_); | 268 QuicFramer framer(SupportedVersions(version_), clock_->Now(), perspective_); |
| 269 QuicFrames frames; | 269 QuicFrames frames; |
| 270 frames.push_back(QuicFrame(&ack)); | 270 QuicFrame ack_frame(&ack); |
| 271 DVLOG(1) << "Adding frame: " << ack_frame; |
| 272 frames.push_back(ack_frame); |
| 271 | 273 |
| 272 QuicStopWaitingFrame stop_waiting; | 274 QuicStopWaitingFrame stop_waiting; |
| 273 stop_waiting.least_unacked = stop_least_unacked; | 275 stop_waiting.least_unacked = stop_least_unacked; |
| 274 frames.push_back(QuicFrame(&stop_waiting)); | 276 frames.push_back(QuicFrame(&stop_waiting)); |
| 275 | 277 |
| 276 std::unique_ptr<QuicPacket> packet( | 278 std::unique_ptr<QuicPacket> packet( |
| 277 BuildUnsizedDataPacket(&framer, header, frames)); | 279 BuildUnsizedDataPacket(&framer, header, frames)); |
| 278 char buffer[kMaxPacketSize]; | 280 char buffer[kMaxPacketSize]; |
| 279 size_t encrypted_size = framer.EncryptPayload(ENCRYPTION_NONE, /*path_id=*/0u, | 281 size_t encrypted_size = framer.EncryptPayload(ENCRYPTION_NONE, /*path_id=*/0u, |
| 280 header.packet_number, *packet, | 282 header.packet_number, *packet, |
| (...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 477 SpdyPriority priority, | 479 SpdyPriority priority, |
| 478 SpdyHeaderBlock headers, | 480 SpdyHeaderBlock headers, |
| 479 QuicStreamOffset* offset) { | 481 QuicStreamOffset* offset) { |
| 480 return MakeRequestHeadersPacket(packet_number, stream_id, | 482 return MakeRequestHeadersPacket(packet_number, stream_id, |
| 481 should_include_version, fin, priority, | 483 should_include_version, fin, priority, |
| 482 std::move(headers), nullptr, offset); | 484 std::move(headers), nullptr, offset); |
| 483 } | 485 } |
| 484 | 486 |
| 485 // If |offset| is provided, will use the value when creating the packet. | 487 // If |offset| is provided, will use the value when creating the packet. |
| 486 // Will also update the value after packet creation. | 488 // Will also update the value after packet creation. |
| 489 std::unique_ptr<QuicReceivedPacket> QuicTestPacketMaker::MakePushPromisePacket( |
| 490 QuicPacketNumber packet_number, |
| 491 QuicStreamId stream_id, |
| 492 QuicStreamId promised_stream_id, |
| 493 bool should_include_version, |
| 494 bool fin, |
| 495 SpdyHeaderBlock headers, |
| 496 size_t* spdy_headers_frame_length, |
| 497 QuicStreamOffset* offset) { |
| 498 InitializeHeader(packet_number, should_include_version); |
| 499 SpdySerializedFrame spdy_frame; |
| 500 SpdyPushPromiseIR promise_frame(stream_id, promised_stream_id, |
| 501 std::move(headers)); |
| 502 promise_frame.set_fin(fin); |
| 503 spdy_frame = spdy_request_framer_.SerializeFrame(promise_frame); |
| 504 if (spdy_headers_frame_length) { |
| 505 *spdy_headers_frame_length = spdy_frame.size(); |
| 506 } |
| 507 if (offset != nullptr) { |
| 508 QuicStreamFrame frame( |
| 509 kHeadersStreamId, false, *offset, |
| 510 base::StringPiece(spdy_frame.data(), spdy_frame.size())); |
| 511 *offset += spdy_frame.size(); |
| 512 return MakePacket(header_, QuicFrame(&frame)); |
| 513 } else { |
| 514 QuicStreamFrame frame( |
| 515 kHeadersStreamId, false, 0, |
| 516 base::StringPiece(spdy_frame.data(), spdy_frame.size())); |
| 517 return MakePacket(header_, QuicFrame(&frame)); |
| 518 } |
| 519 } |
| 520 |
| 521 // If |offset| is provided, will use the value when creating the packet. |
| 522 // Will also update the value after packet creation. |
| 487 std::unique_ptr<QuicReceivedPacket> | 523 std::unique_ptr<QuicReceivedPacket> |
| 488 QuicTestPacketMaker::MakeResponseHeadersPacket( | 524 QuicTestPacketMaker::MakeResponseHeadersPacket( |
| 489 QuicPacketNumber packet_number, | 525 QuicPacketNumber packet_number, |
| 490 QuicStreamId stream_id, | 526 QuicStreamId stream_id, |
| 491 bool should_include_version, | 527 bool should_include_version, |
| 492 bool fin, | 528 bool fin, |
| 493 SpdyHeaderBlock headers, | 529 SpdyHeaderBlock headers, |
| 494 size_t* spdy_headers_frame_length, | 530 size_t* spdy_headers_frame_length, |
| 495 QuicStreamOffset* offset) { | 531 QuicStreamOffset* offset) { |
| 496 InitializeHeader(packet_number, should_include_version); | 532 InitializeHeader(packet_number, should_include_version); |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 608 header_.public_header.reset_flag = false; | 644 header_.public_header.reset_flag = false; |
| 609 header_.public_header.version_flag = should_include_version; | 645 header_.public_header.version_flag = should_include_version; |
| 610 header_.public_header.packet_number_length = PACKET_1BYTE_PACKET_NUMBER; | 646 header_.public_header.packet_number_length = PACKET_1BYTE_PACKET_NUMBER; |
| 611 header_.packet_number = packet_number; | 647 header_.packet_number = packet_number; |
| 612 header_.entropy_flag = false; | 648 header_.entropy_flag = false; |
| 613 header_.fec_flag = false; | 649 header_.fec_flag = false; |
| 614 } | 650 } |
| 615 | 651 |
| 616 } // namespace test | 652 } // namespace test |
| 617 } // namespace net | 653 } // namespace net |
| OLD | NEW |