OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ | 5 #ifndef NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ |
6 #define NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ | 6 #define NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <queue> | 9 #include <queue> |
10 #include <string> | 10 #include <string> |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 QuicCryptoNegotiatedParameters* out_params, | 214 QuicCryptoNegotiatedParameters* out_params, |
215 CryptoHandshakeMessage* out, | 215 CryptoHandshakeMessage* out, |
216 std::string* error_details) const; | 216 std::string* error_details) const; |
217 | 217 |
218 // ProcessRejection processes a REJ message from a server and updates the | 218 // ProcessRejection processes a REJ message from a server and updates the |
219 // cached information about that server. After this, |IsComplete| may return | 219 // cached information about that server. After this, |IsComplete| may return |
220 // true for that server's CachedState. If the rejection message contains state | 220 // true for that server's CachedState. If the rejection message contains state |
221 // about a future handshake (i.e. an nonce value from the server), then it | 221 // about a future handshake (i.e. an nonce value from the server), then it |
222 // will be saved in |out_params|. |now| is used to judge whether the server | 222 // will be saved in |out_params|. |now| is used to judge whether the server |
223 // config in the rejection message has expired. |is_https| is used to track | 223 // config in the rejection message has expired. |is_https| is used to track |
224 // reject reason for secure vs insecure QUIC. If the rejection message | 224 // reject reason for secure vs insecure QUIC. |
225 // indicates that the reject is a stateless-reject, returns error code | |
226 // QUIC_CRYPTO_HANDSHAKE_RECEIVED_STATELESS_REJECT. | |
227 QuicErrorCode ProcessRejection(const CryptoHandshakeMessage& rej, | 225 QuicErrorCode ProcessRejection(const CryptoHandshakeMessage& rej, |
228 QuicWallTime now, | 226 QuicWallTime now, |
229 CachedState* cached, | 227 CachedState* cached, |
230 bool is_https, | 228 bool is_https, |
231 QuicCryptoNegotiatedParameters* out_params, | 229 QuicCryptoNegotiatedParameters* out_params, |
232 std::string* error_details); | 230 std::string* error_details); |
233 | 231 |
234 // ProcessServerHello processes the message in |server_hello|, updates the | 232 // ProcessServerHello processes the message in |server_hello|, updates the |
235 // cached information about that server, writes the negotiated parameters to | 233 // cached information about that server, writes the negotiated parameters to |
236 // |out_params| and returns QUIC_NO_ERROR. If |server_hello| is unacceptable | 234 // |out_params| and returns QUIC_NO_ERROR. If |server_hello| is unacceptable |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
348 | 346 |
349 // The |user_agent_id_| passed in QUIC's CHLO message. | 347 // The |user_agent_id_| passed in QUIC's CHLO message. |
350 std::string user_agent_id_; | 348 std::string user_agent_id_; |
351 | 349 |
352 DISALLOW_COPY_AND_ASSIGN(QuicCryptoClientConfig); | 350 DISALLOW_COPY_AND_ASSIGN(QuicCryptoClientConfig); |
353 }; | 351 }; |
354 | 352 |
355 } // namespace net | 353 } // namespace net |
356 | 354 |
357 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ | 355 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ |
OLD | NEW |