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 833 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
844 // Do any work which logically would be done in OnPacket but can not be | 844 // Do any work which logically would be done in OnPacket but can not be |
845 // safely done until the packet is validated. Returns true if packet can be | 845 // safely done until the packet is validated. Returns true if packet can be |
846 // handled, false otherwise. | 846 // handled, false otherwise. |
847 bool ProcessValidatedPacket(const QuicPacketHeader& header); | 847 bool ProcessValidatedPacket(const QuicPacketHeader& header); |
848 | 848 |
849 // Consider receiving crypto frame on non crypto stream as memory corruption. | 849 // Consider receiving crypto frame on non crypto stream as memory corruption. |
850 bool MaybeConsiderAsMemoryCorruption(const QuicStreamFrame& frame); | 850 bool MaybeConsiderAsMemoryCorruption(const QuicStreamFrame& frame); |
851 | 851 |
852 const QuicTime::Delta DelayedAckTime(); | 852 const QuicTime::Delta DelayedAckTime(); |
853 | 853 |
| 854 // Check if the connection has no outstanding data to send and notify |
| 855 // congestion controller if it is the case. |
| 856 void CheckIfApplicationLimited(); |
| 857 |
854 QuicFramer framer_; | 858 QuicFramer framer_; |
855 QuicConnectionHelperInterface* helper_; // Not owned. | 859 QuicConnectionHelperInterface* helper_; // Not owned. |
856 QuicAlarmFactory* alarm_factory_; // Not owned. | 860 QuicAlarmFactory* alarm_factory_; // Not owned. |
857 PerPacketOptions* per_packet_options_; // Not owned. | 861 PerPacketOptions* per_packet_options_; // Not owned. |
858 QuicPacketWriter* writer_; // Owned or not depending on |owns_writer_|. | 862 QuicPacketWriter* writer_; // Owned or not depending on |owns_writer_|. |
859 bool owns_writer_; | 863 bool owns_writer_; |
860 // Encryption level for new packets. Should only be changed via | 864 // Encryption level for new packets. Should only be changed via |
861 // SetDefaultEncryptionLevel(). | 865 // SetDefaultEncryptionLevel(). |
862 EncryptionLevel encryption_level_; | 866 EncryptionLevel encryption_level_; |
863 bool has_forward_secure_encrypter_; | 867 bool has_forward_secure_encrypter_; |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1075 // Indicates whether a write error is encountered currently. This is used to | 1079 // Indicates whether a write error is encountered currently. This is used to |
1076 // avoid infinite write errors. | 1080 // avoid infinite write errors. |
1077 bool write_error_occured_; | 1081 bool write_error_occured_; |
1078 | 1082 |
1079 DISALLOW_COPY_AND_ASSIGN(QuicConnection); | 1083 DISALLOW_COPY_AND_ASSIGN(QuicConnection); |
1080 }; | 1084 }; |
1081 | 1085 |
1082 } // namespace net | 1086 } // namespace net |
1083 | 1087 |
1084 #endif // NET_QUIC_QUIC_CONNECTION_H_ | 1088 #endif // NET_QUIC_QUIC_CONNECTION_H_ |
OLD | NEW |