Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(281)

Side by Side Diff: net/tools/quic/quic_client.h

Issue 25043005: Add better help information to quic_client and quic_server. Also, (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix comment Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | net/tools/quic/quic_client.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 toy client, which connects to a specified port and sends QUIC 5 // A toy client, which connects to a specified port and sends QUIC
6 // request to that endpoint. 6 // request to that endpoint.
7 7
8 #ifndef NET_TOOLS_QUIC_QUIC_CLIENT_H_ 8 #ifndef NET_TOOLS_QUIC_QUIC_CLIENT_H_
9 #define NET_TOOLS_QUIC_QUIC_CLIENT_H_ 9 #define NET_TOOLS_QUIC_QUIC_CLIENT_H_
10 10
(...skipping 16 matching lines...) Expand all
27 class ProofVerifier; 27 class ProofVerifier;
28 28
29 namespace tools { 29 namespace tools {
30 30
31 class QuicEpollConnectionHelper; 31 class QuicEpollConnectionHelper;
32 32
33 namespace test { 33 namespace test {
34 class QuicClientPeer; 34 class QuicClientPeer;
35 } // namespace test 35 } // namespace test
36 36
37 class QuicClient : public EpollCallbackInterface { 37 class QuicClient : public EpollCallbackInterface,
38 public ReliableQuicStream::Visitor {
38 public: 39 public:
39 QuicClient(IPEndPoint server_address, const std::string& server_hostname, 40 QuicClient(IPEndPoint server_address,
40 const QuicVersion version); 41 const string& server_hostname,
42 const QuicVersion version,
43 bool print_response);
41 QuicClient(IPEndPoint server_address, 44 QuicClient(IPEndPoint server_address,
42 const std::string& server_hostname, 45 const std::string& server_hostname,
43 const QuicConfig& config, 46 const QuicConfig& config,
44 const QuicVersion version); 47 const QuicVersion version);
45 48
46 virtual ~QuicClient(); 49 virtual ~QuicClient();
47 50
48 // Initializes the client to create a connection. Should be called exactly 51 // Initializes the client to create a connection. Should be called exactly
49 // once before calling StartConnect or Connect. Returns true if the 52 // once before calling StartConnect or Connect. Returns true if the
50 // initialization succeeds, false otherwise. 53 // initialization succeeds, false otherwise.
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 virtual void OnRegistration( 92 virtual void OnRegistration(
90 EpollServer* eps, int fd, int event_mask) OVERRIDE {} 93 EpollServer* eps, int fd, int event_mask) OVERRIDE {}
91 virtual void OnModification(int fd, int event_mask) OVERRIDE {} 94 virtual void OnModification(int fd, int event_mask) OVERRIDE {}
92 virtual void OnEvent(int fd, EpollEvent* event) OVERRIDE; 95 virtual void OnEvent(int fd, EpollEvent* event) OVERRIDE;
93 // |fd_| can be unregistered without the client being disconnected. This 96 // |fd_| can be unregistered without the client being disconnected. This
94 // happens in b3m QuicProber where we unregister |fd_| to feed in events to 97 // happens in b3m QuicProber where we unregister |fd_| to feed in events to
95 // the client from the SelectServer. 98 // the client from the SelectServer.
96 virtual void OnUnregistration(int fd, bool replaced) OVERRIDE {} 99 virtual void OnUnregistration(int fd, bool replaced) OVERRIDE {}
97 virtual void OnShutdown(EpollServer* eps, int fd) OVERRIDE {} 100 virtual void OnShutdown(EpollServer* eps, int fd) OVERRIDE {}
98 101
102 // ReliableQuicStream::Visitor
103 virtual void OnClose(ReliableQuicStream* stream) OVERRIDE;
104
99 QuicPacketCreator::Options* options(); 105 QuicPacketCreator::Options* options();
100 106
101 QuicClientSession* session() { return session_.get(); } 107 QuicClientSession* session() { return session_.get(); }
102 108
103 bool connected() const; 109 bool connected() const;
104 110
105 void set_bind_to_address(IPAddressNumber address) { 111 void set_bind_to_address(IPAddressNumber address) {
106 bind_to_address_ = address; 112 bind_to_address_ = address;
107 } 113 }
108 114
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 // are dropped. 189 // are dropped.
184 int packets_dropped_; 190 int packets_dropped_;
185 191
186 // True if the kernel supports SO_RXQ_OVFL, the number of packets dropped 192 // True if the kernel supports SO_RXQ_OVFL, the number of packets dropped
187 // because the socket would otherwise overflow. 193 // because the socket would otherwise overflow.
188 bool overflow_supported_; 194 bool overflow_supported_;
189 195
190 // Which QUIC version does this client talk? 196 // Which QUIC version does this client talk?
191 QuicVersion version_; 197 QuicVersion version_;
192 198
199 // If true, then the contents of each response will be printed to stdout
200 // when the stream is closed (in OnClose).
201 bool print_response_;
202
193 DISALLOW_COPY_AND_ASSIGN(QuicClient); 203 DISALLOW_COPY_AND_ASSIGN(QuicClient);
194 }; 204 };
195 205
196 } // namespace tools 206 } // namespace tools
197 } // namespace net 207 } // namespace net
198 208
199 #endif // NET_TOOLS_QUIC_QUIC_CLIENT_H_ 209 #endif // NET_TOOLS_QUIC_QUIC_CLIENT_H_
OLDNEW
« no previous file with comments | « no previous file | net/tools/quic/quic_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698