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 // A QuicSession, which demuxes a single connection to individual streams. | 5 // A QuicSession, which demuxes a single connection to individual streams. |
6 | 6 |
7 #ifndef NET_QUIC_CORE_QUIC_SESSION_H_ | 7 #ifndef NET_QUIC_CORE_QUIC_SESSION_H_ |
8 #define NET_QUIC_CORE_QUIC_SESSION_H_ | 8 #define NET_QUIC_CORE_QUIC_SESSION_H_ |
9 | 9 |
10 #include <cstddef> | 10 #include <cstddef> |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 public: | 46 public: |
47 virtual ~Visitor() {} | 47 virtual ~Visitor() {} |
48 | 48 |
49 // Called when the connection is closed after the streams have been closed. | 49 // Called when the connection is closed after the streams have been closed. |
50 virtual void OnConnectionClosed(QuicConnectionId connection_id, | 50 virtual void OnConnectionClosed(QuicConnectionId connection_id, |
51 QuicErrorCode error, | 51 QuicErrorCode error, |
52 const std::string& error_details) = 0; | 52 const std::string& error_details) = 0; |
53 | 53 |
54 // Called when the session has become write blocked. | 54 // Called when the session has become write blocked. |
55 virtual void OnWriteBlocked(QuicBlockedWriterInterface* blocked_writer) = 0; | 55 virtual void OnWriteBlocked(QuicBlockedWriterInterface* blocked_writer) = 0; |
56 | |
57 // Called when the session receives reset on a stream from the peer. | |
58 virtual void OnRstStreamReceived(const QuicRstStreamFrame& frame) = 0; | |
59 }; | 56 }; |
60 | 57 |
61 // CryptoHandshakeEvent enumerates the events generated by a QuicCryptoStream. | 58 // CryptoHandshakeEvent enumerates the events generated by a QuicCryptoStream. |
62 enum CryptoHandshakeEvent { | 59 enum CryptoHandshakeEvent { |
63 // ENCRYPTION_FIRST_ESTABLISHED indicates that a full client hello has been | 60 // ENCRYPTION_FIRST_ESTABLISHED indicates that a full client hello has been |
64 // sent by a client and that subsequent packets will be encrypted. (Client | 61 // sent by a client and that subsequent packets will be encrypted. (Client |
65 // only.) | 62 // only.) |
66 ENCRYPTION_FIRST_ESTABLISHED, | 63 ENCRYPTION_FIRST_ESTABLISHED, |
67 // ENCRYPTION_REESTABLISHED indicates that a client hello was rejected by | 64 // ENCRYPTION_REESTABLISHED indicates that a client hello was rejected by |
68 // the server and thus the encryption key has been updated. Therefore the | 65 // the server and thus the encryption key has been updated. Therefore the |
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 | 441 |
445 // Latched value of gfe2_reloadable_flag_quic_flow_control_invariant. | 442 // Latched value of gfe2_reloadable_flag_quic_flow_control_invariant. |
446 const bool flow_control_invariant_; | 443 const bool flow_control_invariant_; |
447 | 444 |
448 DISALLOW_COPY_AND_ASSIGN(QuicSession); | 445 DISALLOW_COPY_AND_ASSIGN(QuicSession); |
449 }; | 446 }; |
450 | 447 |
451 } // namespace net | 448 } // namespace net |
452 | 449 |
453 #endif // NET_QUIC_CORE_QUIC_SESSION_H_ | 450 #endif // NET_QUIC_CORE_QUIC_SESSION_H_ |
OLD | NEW |