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 // The entity that handles framing writes for a Quic client or server. | 5 // The entity that handles framing writes for a Quic client or server. |
6 // Each QuicSession will have a connection associated with it. | 6 // Each QuicSession will have a connection associated with it. |
7 // | 7 // |
8 // On the server side, the Dispatcher handles the raw reads, and hands off | 8 // On the server side, the Dispatcher handles the raw reads, and hands off |
9 // packets via ProcessUdpPacket for framing and processing. | 9 // packets via ProcessUdpPacket for framing and processing. |
10 // | 10 // |
(...skipping 678 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
689 // retransmittable frames to nullptr. | 689 // retransmittable frames to nullptr. |
690 // Saves the connection close packet for later transmission, even if the | 690 // Saves the connection close packet for later transmission, even if the |
691 // writer is write blocked. | 691 // writer is write blocked. |
692 bool WritePacket(QueuedPacket* packet); | 692 bool WritePacket(QueuedPacket* packet); |
693 | 693 |
694 // Does the main work of WritePacket, but does not delete the packet or | 694 // Does the main work of WritePacket, but does not delete the packet or |
695 // retransmittable frames upon success. | 695 // retransmittable frames upon success. |
696 bool WritePacketInner(QueuedPacket* packet); | 696 bool WritePacketInner(QueuedPacket* packet); |
697 | 697 |
698 // Make sure an ack we got from our peer is sane. | 698 // Make sure an ack we got from our peer is sane. |
699 bool ValidateAckFrame(const QuicAckFrame& incoming_ack); | 699 // Returns nullptr for valid acks or an error std::string if it was invalid. |
| 700 const char* ValidateAckFrame(const QuicAckFrame& incoming_ack); |
700 | 701 |
701 // Make sure a stop waiting we got from our peer is sane. | 702 // Make sure a stop waiting we got from our peer is sane. |
702 bool ValidateStopWaitingFrame(const QuicStopWaitingFrame& stop_waiting); | 703 // Returns nullptr if the frame is valid or an error std::string if it was |
| 704 // invalid. |
| 705 const char* ValidateStopWaitingFrame( |
| 706 const QuicStopWaitingFrame& stop_waiting); |
703 | 707 |
704 // Sends a version negotiation packet to the peer. | 708 // Sends a version negotiation packet to the peer. |
705 void SendVersionNegotiationPacket(); | 709 void SendVersionNegotiationPacket(); |
706 | 710 |
707 // Clears any accumulated frames from the last received packet. | 711 // Clears any accumulated frames from the last received packet. |
708 void ClearLastFrames(); | 712 void ClearLastFrames(); |
709 | 713 |
710 // Deletes and clears any QueuedPackets. | 714 // Deletes and clears any QueuedPackets. |
711 void ClearQueuedPackets(); | 715 void ClearQueuedPackets(); |
712 | 716 |
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
986 | 990 |
987 // Whether a GoAway has been received. | 991 // Whether a GoAway has been received. |
988 bool goaway_received_; | 992 bool goaway_received_; |
989 | 993 |
990 DISALLOW_COPY_AND_ASSIGN(QuicConnection); | 994 DISALLOW_COPY_AND_ASSIGN(QuicConnection); |
991 }; | 995 }; |
992 | 996 |
993 } // namespace net | 997 } // namespace net |
994 | 998 |
995 #endif // NET_QUIC_QUIC_CONNECTION_H_ | 999 #endif // NET_QUIC_QUIC_CONNECTION_H_ |
OLD | NEW |