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 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 // |payload| is the non-encrypted FEC protected payload of the packet. | 114 // |payload| is the non-encrypted FEC protected payload of the packet. |
115 virtual void OnFecProtectedPayload(base::StringPiece payload) = 0; | 115 virtual void OnFecProtectedPayload(base::StringPiece payload) = 0; |
116 | 116 |
117 // Called when a StreamFrame has been parsed. | 117 // Called when a StreamFrame has been parsed. |
118 virtual bool OnStreamFrame(const QuicStreamFrame& frame) = 0; | 118 virtual bool OnStreamFrame(const QuicStreamFrame& frame) = 0; |
119 | 119 |
120 // Called when a AckFrame has been parsed. If OnAckFrame returns false, | 120 // Called when a AckFrame has been parsed. If OnAckFrame returns false, |
121 // the framer will stop parsing the current packet. | 121 // the framer will stop parsing the current packet. |
122 virtual bool OnAckFrame(const QuicAckFrame& frame) = 0; | 122 virtual bool OnAckFrame(const QuicAckFrame& frame) = 0; |
123 | 123 |
124 // Called when a CongestionFeedbackFrame has been parsed. | |
125 virtual bool OnCongestionFeedbackFrame( | |
126 const QuicCongestionFeedbackFrame& frame) = 0; | |
127 | |
128 // Called when a StopWaitingFrame has been parsed. | 124 // Called when a StopWaitingFrame has been parsed. |
129 virtual bool OnStopWaitingFrame(const QuicStopWaitingFrame& frame) = 0; | 125 virtual bool OnStopWaitingFrame(const QuicStopWaitingFrame& frame) = 0; |
130 | 126 |
131 // Called when a PingFrame has been parsed. | 127 // Called when a PingFrame has been parsed. |
132 virtual bool OnPingFrame(const QuicPingFrame& frame) = 0; | 128 virtual bool OnPingFrame(const QuicPingFrame& frame) = 0; |
133 | 129 |
134 // Called when a RstStreamFrame has been parsed. | 130 // Called when a RstStreamFrame has been parsed. |
135 virtual bool OnRstStreamFrame(const QuicRstStreamFrame& frame) = 0; | 131 virtual bool OnRstStreamFrame(const QuicRstStreamFrame& frame) = 0; |
136 | 132 |
137 // Called when a ConnectionCloseFrame has been parsed. | 133 // Called when a ConnectionCloseFrame has been parsed. |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
407 | 403 |
408 bool ProcessPacketSequenceNumber( | 404 bool ProcessPacketSequenceNumber( |
409 QuicSequenceNumberLength sequence_number_length, | 405 QuicSequenceNumberLength sequence_number_length, |
410 QuicPacketSequenceNumber* sequence_number); | 406 QuicPacketSequenceNumber* sequence_number); |
411 bool ProcessFrameData(const QuicPacketHeader& header); | 407 bool ProcessFrameData(const QuicPacketHeader& header); |
412 bool ProcessStreamFrame(uint8 frame_type, QuicStreamFrame* frame); | 408 bool ProcessStreamFrame(uint8 frame_type, QuicStreamFrame* frame); |
413 bool ProcessAckFrame(uint8 frame_type, QuicAckFrame* frame); | 409 bool ProcessAckFrame(uint8 frame_type, QuicAckFrame* frame); |
414 bool ProcessTimestampsInAckFrame(QuicAckFrame* frame); | 410 bool ProcessTimestampsInAckFrame(QuicAckFrame* frame); |
415 bool ProcessStopWaitingFrame(const QuicPacketHeader& public_header, | 411 bool ProcessStopWaitingFrame(const QuicPacketHeader& public_header, |
416 QuicStopWaitingFrame* stop_waiting); | 412 QuicStopWaitingFrame* stop_waiting); |
417 bool ProcessCongestionFeedbackFrame( | |
418 QuicCongestionFeedbackFrame* congestion_feedback); | |
419 bool ProcessRstStreamFrame(QuicRstStreamFrame* frame); | 413 bool ProcessRstStreamFrame(QuicRstStreamFrame* frame); |
420 bool ProcessConnectionCloseFrame(QuicConnectionCloseFrame* frame); | 414 bool ProcessConnectionCloseFrame(QuicConnectionCloseFrame* frame); |
421 bool ProcessGoAwayFrame(QuicGoAwayFrame* frame); | 415 bool ProcessGoAwayFrame(QuicGoAwayFrame* frame); |
422 bool ProcessWindowUpdateFrame(QuicWindowUpdateFrame* frame); | 416 bool ProcessWindowUpdateFrame(QuicWindowUpdateFrame* frame); |
423 bool ProcessBlockedFrame(QuicBlockedFrame* frame); | 417 bool ProcessBlockedFrame(QuicBlockedFrame* frame); |
424 | 418 |
425 bool DecryptPayload(const QuicPacketHeader& header, | 419 bool DecryptPayload(const QuicPacketHeader& header, |
426 const QuicEncryptedPacket& packet); | 420 const QuicEncryptedPacket& packet); |
427 | 421 |
428 // Returns the full packet sequence number from the truncated | 422 // Returns the full packet sequence number from the truncated |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
461 QuicDataWriter* writer); | 455 QuicDataWriter* writer); |
462 bool AppendTypeByte(const QuicFrame& frame, | 456 bool AppendTypeByte(const QuicFrame& frame, |
463 bool last_frame_in_packet, | 457 bool last_frame_in_packet, |
464 QuicDataWriter* writer); | 458 QuicDataWriter* writer); |
465 bool AppendStreamFrame(const QuicStreamFrame& frame, | 459 bool AppendStreamFrame(const QuicStreamFrame& frame, |
466 bool last_frame_in_packet, | 460 bool last_frame_in_packet, |
467 QuicDataWriter* builder); | 461 QuicDataWriter* builder); |
468 bool AppendAckFrameAndTypeByte(const QuicPacketHeader& header, | 462 bool AppendAckFrameAndTypeByte(const QuicPacketHeader& header, |
469 const QuicAckFrame& frame, | 463 const QuicAckFrame& frame, |
470 QuicDataWriter* builder); | 464 QuicDataWriter* builder); |
471 bool AppendCongestionFeedbackFrame(const QuicCongestionFeedbackFrame& frame, | |
472 QuicDataWriter* builder); | |
473 bool AppendTimestampToAckFrame(const QuicAckFrame& frame, | 465 bool AppendTimestampToAckFrame(const QuicAckFrame& frame, |
474 QuicDataWriter* builder); | 466 QuicDataWriter* builder); |
475 bool AppendStopWaitingFrame(const QuicPacketHeader& header, | 467 bool AppendStopWaitingFrame(const QuicPacketHeader& header, |
476 const QuicStopWaitingFrame& frame, | 468 const QuicStopWaitingFrame& frame, |
477 QuicDataWriter* builder); | 469 QuicDataWriter* builder); |
478 bool AppendRstStreamFrame(const QuicRstStreamFrame& frame, | 470 bool AppendRstStreamFrame(const QuicRstStreamFrame& frame, |
479 QuicDataWriter* builder); | 471 QuicDataWriter* builder); |
480 bool AppendConnectionCloseFrame(const QuicConnectionCloseFrame& frame, | 472 bool AppendConnectionCloseFrame(const QuicConnectionCloseFrame& frame, |
481 QuicDataWriter* builder); | 473 QuicDataWriter* builder); |
482 bool AppendGoAwayFrame(const QuicGoAwayFrame& frame, QuicDataWriter* writer); | 474 bool AppendGoAwayFrame(const QuicGoAwayFrame& frame, QuicDataWriter* writer); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
539 // The time delta computed for the last timestamp frame. This is relative to | 531 // The time delta computed for the last timestamp frame. This is relative to |
540 // the creation_time. | 532 // the creation_time. |
541 QuicTime::Delta last_timestamp_; | 533 QuicTime::Delta last_timestamp_; |
542 | 534 |
543 DISALLOW_COPY_AND_ASSIGN(QuicFramer); | 535 DISALLOW_COPY_AND_ASSIGN(QuicFramer); |
544 }; | 536 }; |
545 | 537 |
546 } // namespace net | 538 } // namespace net |
547 | 539 |
548 #endif // NET_QUIC_QUIC_FRAMER_H_ | 540 #endif // NET_QUIC_QUIC_FRAMER_H_ |
OLD | NEW |