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_TEST_TOOLS_QUIC_CONNECTION_PEER_H_ | 5 #ifndef NET_QUIC_TEST_TOOLS_QUIC_CONNECTION_PEER_H_ |
6 #define NET_QUIC_TEST_TOOLS_QUIC_CONNECTION_PEER_H_ | 6 #define NET_QUIC_TEST_TOOLS_QUIC_CONNECTION_PEER_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "net/base/ip_endpoint.h" | 9 #include "net/base/ip_endpoint.h" |
10 #include "net/quic/quic_connection_stats.h" | 10 #include "net/quic/quic_connection_stats.h" |
11 #include "net/quic/quic_protocol.h" | 11 #include "net/quic/quic_protocol.h" |
12 | 12 |
13 namespace net { | 13 namespace net { |
14 | 14 |
15 struct QuicAckFrame; | 15 struct QuicAckFrame; |
16 struct QuicPacketHeader; | 16 struct QuicPacketHeader; |
17 class QuicAlarm; | 17 class QuicAlarm; |
18 class QuicConnection; | 18 class QuicConnection; |
19 class QuicConnectionHelperInterface; | 19 class QuicConnectionHelperInterface; |
20 class QuicConnectionVisitorInterface; | 20 class QuicConnectionVisitorInterface; |
| 21 class QuicEncryptedPacket; |
21 class QuicFecGroup; | 22 class QuicFecGroup; |
22 class QuicFramer; | 23 class QuicFramer; |
23 class QuicPacketCreator; | 24 class QuicPacketCreator; |
24 class QuicPacketWriter; | 25 class QuicPacketWriter; |
25 class QuicReceivedPacketManager; | 26 class QuicReceivedPacketManager; |
26 class QuicSentPacketManager; | 27 class QuicSentPacketManager; |
27 class ReceiveAlgorithmInterface; | 28 class ReceiveAlgorithmInterface; |
28 class SendAlgorithmInterface; | 29 class SendAlgorithmInterface; |
29 | 30 |
30 namespace test { | 31 namespace test { |
31 | 32 |
32 class QuicTestWriter; | |
33 | |
34 // Peer to make public a number of otherwise private QuicConnection methods. | 33 // Peer to make public a number of otherwise private QuicConnection methods. |
35 class QuicConnectionPeer { | 34 class QuicConnectionPeer { |
36 public: | 35 public: |
37 static void SendAck(QuicConnection* connection); | 36 static void SendAck(QuicConnection* connection); |
38 | 37 |
39 static void SetReceiveAlgorithm(QuicConnection* connection, | 38 static void SetReceiveAlgorithm(QuicConnection* connection, |
40 ReceiveAlgorithmInterface* receive_algorithm); | 39 ReceiveAlgorithmInterface* receive_algorithm); |
41 | 40 |
42 static void SetSendAlgorithm(QuicConnection* connection, | 41 static void SetSendAlgorithm(QuicConnection* connection, |
43 SendAlgorithmInterface* send_algorithm); | 42 SendAlgorithmInterface* send_algorithm); |
(...skipping 26 matching lines...) Expand all Loading... |
70 | 69 |
71 static bool IsValidEntropy(QuicConnection* connection, | 70 static bool IsValidEntropy(QuicConnection* connection, |
72 QuicPacketSequenceNumber largest_observed, | 71 QuicPacketSequenceNumber largest_observed, |
73 const SequenceNumberSet& missing_packets, | 72 const SequenceNumberSet& missing_packets, |
74 QuicPacketEntropyHash entropy_hash); | 73 QuicPacketEntropyHash entropy_hash); |
75 | 74 |
76 static QuicPacketEntropyHash ReceivedEntropyHash( | 75 static QuicPacketEntropyHash ReceivedEntropyHash( |
77 QuicConnection* connection, | 76 QuicConnection* connection, |
78 QuicPacketSequenceNumber sequence_number); | 77 QuicPacketSequenceNumber sequence_number); |
79 | 78 |
80 static bool IsWriteBlocked(QuicConnection* connection); | |
81 | |
82 static void SetIsWriteBlocked(QuicConnection* connection, bool write_blocked); | |
83 | |
84 static bool IsServer(QuicConnection* connection); | 79 static bool IsServer(QuicConnection* connection); |
85 | 80 |
86 static void SetIsServer(QuicConnection* connection, bool is_server); | 81 static void SetIsServer(QuicConnection* connection, bool is_server); |
87 | 82 |
88 static void SetSelfAddress(QuicConnection* connection, | 83 static void SetSelfAddress(QuicConnection* connection, |
89 const IPEndPoint& self_address); | 84 const IPEndPoint& self_address); |
90 | 85 |
91 static void SetPeerAddress(QuicConnection* connection, | 86 static void SetPeerAddress(QuicConnection* connection, |
92 const IPEndPoint& peer_address); | 87 const IPEndPoint& peer_address); |
93 | 88 |
94 static void SwapCrypters(QuicConnection* connection, QuicFramer* framer); | 89 static void SwapCrypters(QuicConnection* connection, QuicFramer* framer); |
95 | 90 |
96 static QuicConnectionHelperInterface* GetHelper(QuicConnection* connection); | 91 static QuicConnectionHelperInterface* GetHelper(QuicConnection* connection); |
97 | 92 |
98 static QuicFramer* GetFramer(QuicConnection* connection); | 93 static QuicFramer* GetFramer(QuicConnection* connection); |
99 | 94 |
100 // Set last_header_->fec_group = fec_group and return connection->GetFecGroup | 95 // Set last_header_->fec_group = fec_group and return connection->GetFecGroup |
101 static QuicFecGroup* GetFecGroup(QuicConnection* connection, int fec_group); | 96 static QuicFecGroup* GetFecGroup(QuicConnection* connection, int fec_group); |
102 | 97 |
103 static QuicAlarm* GetAckAlarm(QuicConnection* connection); | 98 static QuicAlarm* GetAckAlarm(QuicConnection* connection); |
104 static QuicAlarm* GetRetransmissionAlarm(QuicConnection* connection); | 99 static QuicAlarm* GetRetransmissionAlarm(QuicConnection* connection); |
105 static QuicAlarm* GetSendAlarm(QuicConnection* connection); | 100 static QuicAlarm* GetSendAlarm(QuicConnection* connection); |
106 static QuicAlarm* GetResumeWritesAlarm(QuicConnection* connection); | 101 static QuicAlarm* GetResumeWritesAlarm(QuicConnection* connection); |
107 static QuicAlarm* GetTimeoutAlarm(QuicConnection* connection); | 102 static QuicAlarm* GetTimeoutAlarm(QuicConnection* connection); |
108 | 103 |
109 static QuicPacketWriter* GetWriter(QuicConnection* connection); | 104 static QuicPacketWriter* GetWriter(QuicConnection* connection); |
110 static void SetWriter(QuicConnection* connection, QuicTestWriter* writer); | 105 static void SetWriter(QuicConnection* connection, QuicPacketWriter* writer); |
111 static void CloseConnection(QuicConnection* connection); | 106 static void CloseConnection(QuicConnection* connection); |
| 107 static QuicEncryptedPacket* GetConnectionClosePacket( |
| 108 QuicConnection* connection); |
112 | 109 |
113 private: | 110 private: |
114 DISALLOW_COPY_AND_ASSIGN(QuicConnectionPeer); | 111 DISALLOW_COPY_AND_ASSIGN(QuicConnectionPeer); |
115 }; | 112 }; |
116 | 113 |
117 } // namespace test | 114 } // namespace test |
118 | 115 |
119 } // namespace net | 116 } // namespace net |
120 | 117 |
121 #endif // NET_QUIC_TEST_TOOLS_QUIC_TEST_PEER_H_ | 118 #endif // NET_QUIC_TEST_TOOLS_QUIC_CONNECTION_PEER_H_ |
OLD | NEW |