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

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

Issue 47283002: Land Recent QUIC changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix compilation error Created 7 years, 1 month 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 | « net/tools/quic/quic_reliable_client_stream_test.cc ('k') | net/tools/quic/quic_server.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 server, which listens on a specified address for QUIC traffic and 5 // A toy server, which listens on a specified address for QUIC traffic and
6 // handles incoming responses. 6 // handles incoming responses.
7 7
8 #ifndef NET_TOOLS_QUIC_QUIC_SERVER_H_ 8 #ifndef NET_TOOLS_QUIC_QUIC_SERVER_H_
9 #define NET_TOOLS_QUIC_QUIC_SERVER_H_ 9 #define NET_TOOLS_QUIC_QUIC_SERVER_H_
10 10
(...skipping 11 matching lines...) Expand all
22 22
23 namespace test { 23 namespace test {
24 class QuicServerPeer; 24 class QuicServerPeer;
25 } // namespace test 25 } // namespace test
26 26
27 class QuicDispatcher; 27 class QuicDispatcher;
28 28
29 class QuicServer : public EpollCallbackInterface { 29 class QuicServer : public EpollCallbackInterface {
30 public: 30 public:
31 QuicServer(); 31 QuicServer();
32 explicit QuicServer(const QuicConfig& config); 32 QuicServer(const QuicConfig& config,
33 const QuicVersionVector& supported_versions);
33 34
34 virtual ~QuicServer(); 35 virtual ~QuicServer();
35 36
36 // Start listening on the specified address. 37 // Start listening on the specified address.
37 bool Listen(const IPEndPoint& address); 38 bool Listen(const IPEndPoint& address);
38 39
39 // Wait up to 50ms, and handle any events which occur. 40 // Wait up to 50ms, and handle any events which occur.
40 void WaitForEvents(); 41 void WaitForEvents();
41 42
42 // Server deletion is imminent. Start cleaning up the epoll server. 43 // Server deletion is imminent. Start cleaning up the epoll server.
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 108
108 // If true, use recvmmsg for reading. 109 // If true, use recvmmsg for reading.
109 bool use_recvmmsg_; 110 bool use_recvmmsg_;
110 111
111 // config_ contains non-crypto parameters that are negotiated in the crypto 112 // config_ contains non-crypto parameters that are negotiated in the crypto
112 // handshake. 113 // handshake.
113 QuicConfig config_; 114 QuicConfig config_;
114 // crypto_config_ contains crypto parameters for the handshake. 115 // crypto_config_ contains crypto parameters for the handshake.
115 QuicCryptoServerConfig crypto_config_; 116 QuicCryptoServerConfig crypto_config_;
116 117
118 // This vector contains QUIC versions which we currently support.
119 // This should be ordered such that the highest supported version is the first
120 // element, with subsequent elements in descending order (versions can be
121 // skipped as necessary).
122 QuicVersionVector supported_versions_;
123
117 DISALLOW_COPY_AND_ASSIGN(QuicServer); 124 DISALLOW_COPY_AND_ASSIGN(QuicServer);
118 }; 125 };
119 126
120 } // namespace tools 127 } // namespace tools
121 } // namespace net 128 } // namespace net
122 129
123 #endif // NET_TOOLS_QUIC_QUIC_SERVER_H_ 130 #endif // NET_TOOLS_QUIC_QUIC_SERVER_H_
OLDNEW
« no previous file with comments | « net/tools/quic/quic_reliable_client_stream_test.cc ('k') | net/tools/quic/quic_server.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698