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

Side by Side Diff: net/quic/core/quic_crypto_server_stream.h

Issue 2797523002: Prevent multiple simultaneous calls to GetProof (Closed)
Patch Set: Change to use MockClock Created 3 years, 8 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
« no previous file with comments | « no previous file | net/quic/core/quic_crypto_server_stream.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 #ifndef NET_QUIC_CORE_QUIC_CRYPTO_SERVER_STREAM_H_ 5 #ifndef NET_QUIC_CORE_QUIC_CRYPTO_SERVER_STREAM_H_
6 #define NET_QUIC_CORE_QUIC_CRYPTO_SERVER_STREAM_H_ 6 #define NET_QUIC_CORE_QUIC_CRYPTO_SERVER_STREAM_H_
7 7
8 #include <cstdint> 8 #include <cstdint>
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 QuicCompressedCertsCache* compressed_certs_cache_; 214 QuicCompressedCertsCache* compressed_certs_cache_;
215 215
216 // Server's certificate chain and signature of the server config, as provided 216 // Server's certificate chain and signature of the server config, as provided
217 // by ProofSource::GetProof. 217 // by ProofSource::GetProof.
218 QuicReferenceCountedPointer<QuicSignedServerConfig> signed_config_; 218 QuicReferenceCountedPointer<QuicSignedServerConfig> signed_config_;
219 219
220 // Hash of the last received CHLO message which can be used for generating 220 // Hash of the last received CHLO message which can be used for generating
221 // server config update messages. 221 // server config update messages.
222 std::string chlo_hash_; 222 std::string chlo_hash_;
223 223
224 // Pointer to the active callback that will receive the result of
225 // the client hello validation request and forward it to
226 // FinishProcessingHandshakeMessage for processing. nullptr if no
227 // handshake message is being validated.
228 ValidateCallback* validate_client_hello_cb_;
229
230 // Pointer to the helper for this crypto stream. Must outlive this stream. 224 // Pointer to the helper for this crypto stream. Must outlive this stream.
231 Helper* helper_; 225 Helper* helper_;
232 226
233 // Number of handshake messages received by this stream. 227 // Number of handshake messages received by this stream.
234 uint8_t num_handshake_messages_; 228 uint8_t num_handshake_messages_;
235 229
236 // Number of handshake messages received by this stream that contain 230 // Number of handshake messages received by this stream that contain
237 // server nonces (indicating that this is a non-zero-RTT handshake 231 // server nonces (indicating that this is a non-zero-RTT handshake
238 // attempt). 232 // attempt).
239 uint8_t num_handshake_messages_with_server_nonces_; 233 uint8_t num_handshake_messages_with_server_nonces_;
(...skipping 22 matching lines...) Expand all
262 256
263 // Set to true, once the server has received information from the 257 // Set to true, once the server has received information from the
264 // client that it supports stateless reject. 258 // client that it supports stateless reject.
265 // TODO(jokulik): Remove once client stateless reject support 259 // TODO(jokulik): Remove once client stateless reject support
266 // becomes the default. 260 // becomes the default.
267 bool peer_supports_stateless_rejects_; 261 bool peer_supports_stateless_rejects_;
268 262
269 // Size of the packet containing the most recently received CHLO. 263 // Size of the packet containing the most recently received CHLO.
270 QuicByteCount chlo_packet_size_; 264 QuicByteCount chlo_packet_size_;
271 265
266 // Pointer to the active callback that will receive the result of the client
267 // hello validation request and forward it to FinishProcessingHandshakeMessage
268 // for processing. nullptr if no handshake message is being validated. Note
269 // that this field is mutually exclusive with process_client_hello_cb_.
270 ValidateCallback* validate_client_hello_cb_;
271
272 // Pointer to the active callback which will receive the results of 272 // Pointer to the active callback which will receive the results of
273 // ProcessClientHello and forward it to 273 // ProcessClientHello and forward it to
274 // FinishProcessingHandshakeMessageAfterProcessClientHello. 274 // FinishProcessingHandshakeMessageAfterProcessClientHello. Note that this
275 // field is mutually exclusive with validate_client_hello_cb_.
275 ProcessClientHelloCallback* process_client_hello_cb_; 276 ProcessClientHelloCallback* process_client_hello_cb_;
276 277
277 DISALLOW_COPY_AND_ASSIGN(QuicCryptoServerStream); 278 DISALLOW_COPY_AND_ASSIGN(QuicCryptoServerStream);
278 }; 279 };
279 280
280 } // namespace net 281 } // namespace net
281 282
282 #endif // NET_QUIC_CORE_QUIC_CRYPTO_SERVER_STREAM_H_ 283 #endif // NET_QUIC_CORE_QUIC_CRYPTO_SERVER_STREAM_H_
OLDNEW
« no previous file with comments | « no previous file | net/quic/core/quic_crypto_server_stream.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698