OLD | NEW |
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_FRAMER_H_ | 5 #ifndef NET_QUIC_QUIC_FRAMER_H_ |
6 #define NET_QUIC_QUIC_FRAMER_H_ | 6 #define NET_QUIC_QUIC_FRAMER_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 17 matching lines...) Expand all Loading... |
28 | 28 |
29 // Number of bytes reserved for the frame type preceding each frame. | 29 // Number of bytes reserved for the frame type preceding each frame. |
30 const size_t kQuicFrameTypeSize = 1; | 30 const size_t kQuicFrameTypeSize = 1; |
31 // Number of bytes reserved for error code. | 31 // Number of bytes reserved for error code. |
32 const size_t kQuicErrorCodeSize = 4; | 32 const size_t kQuicErrorCodeSize = 4; |
33 // Number of bytes reserved to denote the length of error details field. | 33 // Number of bytes reserved to denote the length of error details field. |
34 const size_t kQuicErrorDetailsLengthSize = 2; | 34 const size_t kQuicErrorDetailsLengthSize = 2; |
35 | 35 |
36 // Maximum number of bytes reserved for stream id. | 36 // Maximum number of bytes reserved for stream id. |
37 const size_t kQuicMaxStreamIdSize = 4; | 37 const size_t kQuicMaxStreamIdSize = 4; |
38 // Number of bytes reserved for fin flag in stream frame. | |
39 // TODO(ianswett): Remove once QUIC_VERSION_6 and before are removed. | |
40 const size_t kQuicStreamFinSize = 1; | |
41 // Maximum number of bytes reserved for byte offset in stream frame. | 38 // Maximum number of bytes reserved for byte offset in stream frame. |
42 const size_t kQuicMaxStreamOffsetSize = 8; | 39 const size_t kQuicMaxStreamOffsetSize = 8; |
43 // Number of bytes reserved to store payload length in stream frame. | 40 // Number of bytes reserved to store payload length in stream frame. |
44 const size_t kQuicStreamPayloadLengthSize = 2; | 41 const size_t kQuicStreamPayloadLengthSize = 2; |
45 | 42 |
46 // Size in bytes of the entropy hash sent in ack frames. | 43 // Size in bytes of the entropy hash sent in ack frames. |
47 const size_t kQuicEntropyHashSize = 1; | 44 const size_t kQuicEntropyHashSize = 1; |
48 // Size in bytes reserved for the delta time of the largest observed | 45 // Size in bytes reserved for the delta time of the largest observed |
49 // sequence number in ack frames. | 46 // sequence number in ack frames. |
50 const size_t kQuicDeltaTimeLargestObservedSize = 4; | 47 const size_t kQuicDeltaTimeLargestObservedSize = 4; |
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
358 bool ProcessPublicHeader(QuicPacketPublicHeader* header); | 355 bool ProcessPublicHeader(QuicPacketPublicHeader* header); |
359 | 356 |
360 bool ProcessPacketHeader(QuicPacketHeader* header, | 357 bool ProcessPacketHeader(QuicPacketHeader* header, |
361 const QuicEncryptedPacket& packet); | 358 const QuicEncryptedPacket& packet); |
362 | 359 |
363 bool ProcessPacketSequenceNumber( | 360 bool ProcessPacketSequenceNumber( |
364 QuicSequenceNumberLength sequence_number_length, | 361 QuicSequenceNumberLength sequence_number_length, |
365 QuicPacketSequenceNumber* sequence_number); | 362 QuicPacketSequenceNumber* sequence_number); |
366 bool ProcessFrameData(); | 363 bool ProcessFrameData(); |
367 bool ProcessStreamFrame(uint8 frame_type, QuicStreamFrame* frame); | 364 bool ProcessStreamFrame(uint8 frame_type, QuicStreamFrame* frame); |
368 bool ProcessV6StreamFrame(QuicStreamFrame* frame); | |
369 bool ProcessAckFrame(QuicAckFrame* frame); | 365 bool ProcessAckFrame(QuicAckFrame* frame); |
370 bool ProcessReceivedInfo(ReceivedPacketInfo* received_info); | 366 bool ProcessReceivedInfo(ReceivedPacketInfo* received_info); |
371 bool ProcessSentInfo(SentPacketInfo* sent_info); | 367 bool ProcessSentInfo(SentPacketInfo* sent_info); |
372 bool ProcessQuicCongestionFeedbackFrame( | 368 bool ProcessQuicCongestionFeedbackFrame( |
373 QuicCongestionFeedbackFrame* congestion_feedback); | 369 QuicCongestionFeedbackFrame* congestion_feedback); |
374 bool ProcessRstStreamFrame(QuicRstStreamFrame* frame); | 370 bool ProcessRstStreamFrame(QuicRstStreamFrame* frame); |
375 bool ProcessConnectionCloseFrame(QuicConnectionCloseFrame* frame); | 371 bool ProcessConnectionCloseFrame(QuicConnectionCloseFrame* frame); |
376 bool ProcessGoAwayFrame(QuicGoAwayFrame* frame); | 372 bool ProcessGoAwayFrame(QuicGoAwayFrame* frame); |
377 | 373 |
378 bool DecryptPayload(const QuicPacketHeader& header, | 374 bool DecryptPayload(const QuicPacketHeader& header, |
(...skipping 12 matching lines...) Expand all Loading... |
391 QuicSequenceNumberLength sequence_number_length, | 387 QuicSequenceNumberLength sequence_number_length, |
392 QuicPacketSequenceNumber packet_sequence_number, | 388 QuicPacketSequenceNumber packet_sequence_number, |
393 QuicDataWriter* writer); | 389 QuicDataWriter* writer); |
394 | 390 |
395 bool AppendTypeByte(const QuicFrame& frame, | 391 bool AppendTypeByte(const QuicFrame& frame, |
396 bool last_frame_in_packet, | 392 bool last_frame_in_packet, |
397 QuicDataWriter* writer); | 393 QuicDataWriter* writer); |
398 bool AppendStreamFramePayload(const QuicStreamFrame& frame, | 394 bool AppendStreamFramePayload(const QuicStreamFrame& frame, |
399 bool last_frame_in_packet, | 395 bool last_frame_in_packet, |
400 QuicDataWriter* builder); | 396 QuicDataWriter* builder); |
401 bool AppendV6StreamFramePayload(const QuicStreamFrame& frame, | |
402 QuicDataWriter* builder); | |
403 bool AppendAckFramePayload(const QuicAckFrame& frame, | 397 bool AppendAckFramePayload(const QuicAckFrame& frame, |
404 QuicDataWriter* builder); | 398 QuicDataWriter* builder); |
405 bool AppendQuicCongestionFeedbackFramePayload( | 399 bool AppendQuicCongestionFeedbackFramePayload( |
406 const QuicCongestionFeedbackFrame& frame, | 400 const QuicCongestionFeedbackFrame& frame, |
407 QuicDataWriter* builder); | 401 QuicDataWriter* builder); |
408 bool AppendRstStreamFramePayload(const QuicRstStreamFrame& frame, | 402 bool AppendRstStreamFramePayload(const QuicRstStreamFrame& frame, |
409 QuicDataWriter* builder); | 403 QuicDataWriter* builder); |
410 bool AppendConnectionCloseFramePayload( | 404 bool AppendConnectionCloseFramePayload( |
411 const QuicConnectionCloseFrame& frame, | 405 const QuicConnectionCloseFrame& frame, |
412 QuicDataWriter* builder); | 406 QuicDataWriter* builder); |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
452 // The time this frames was created. Time written to the wire will be | 446 // The time this frames was created. Time written to the wire will be |
453 // written as a delta from this value. | 447 // written as a delta from this value. |
454 QuicTime creation_time_; | 448 QuicTime creation_time_; |
455 | 449 |
456 DISALLOW_COPY_AND_ASSIGN(QuicFramer); | 450 DISALLOW_COPY_AND_ASSIGN(QuicFramer); |
457 }; | 451 }; |
458 | 452 |
459 } // namespace net | 453 } // namespace net |
460 | 454 |
461 #endif // NET_QUIC_QUIC_FRAMER_H_ | 455 #endif // NET_QUIC_QUIC_FRAMER_H_ |
OLD | NEW |