| 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_SERVER_CONFIG_H_ | 5 #ifndef NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ |
| 6 #define NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ | 6 #define NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 345 QuicVersion version, | 345 QuicVersion version, |
| 346 base::StringPiece chlo_hash, | 346 base::StringPiece chlo_hash, |
| 347 const SourceAddressTokens& previous_source_address_tokens, | 347 const SourceAddressTokens& previous_source_address_tokens, |
| 348 const IPAddress& server_ip, | 348 const IPAddress& server_ip, |
| 349 const IPAddress& client_ip, | 349 const IPAddress& client_ip, |
| 350 const QuicClock* clock, | 350 const QuicClock* clock, |
| 351 QuicRandom* rand, | 351 QuicRandom* rand, |
| 352 QuicCompressedCertsCache* compressed_certs_cache, | 352 QuicCompressedCertsCache* compressed_certs_cache, |
| 353 const QuicCryptoNegotiatedParameters& params, | 353 const QuicCryptoNegotiatedParameters& params, |
| 354 const CachedNetworkParameters* cached_network_params, | 354 const CachedNetworkParameters* cached_network_params, |
| 355 const QuicTagVector& connection_options, |
| 355 CryptoHandshakeMessage* out) const; | 356 CryptoHandshakeMessage* out) const; |
| 356 | 357 |
| 357 // BuildServerConfigUpdateMessage invokes |cb| with a SCUP message containing | 358 // BuildServerConfigUpdateMessage invokes |cb| with a SCUP message containing |
| 358 // the current primary config, an up to date source-address token, and cert | 359 // the current primary config, an up to date source-address token, and cert |
| 359 // chain and proof in the case of secure QUIC. Passes true to |cb| if the | 360 // chain and proof in the case of secure QUIC. Passes true to |cb| if the |
| 360 // message was generated successfully, and false otherwise. This method | 361 // message was generated successfully, and false otherwise. This method |
| 361 // assumes ownership of |cb|. | 362 // assumes ownership of |cb|. |
| 362 // | 363 // |
| 363 // |cached_network_params| is optional, and can be nullptr. | 364 // |cached_network_params| is optional, and can be nullptr. |
| 364 // | 365 // |
| 365 // TODO(gredner): This method is an async version of the above. The | 366 // TODO(gredner): This method is an async version of the above. The |
| 366 // synchronous version will eventually be removed. | 367 // synchronous version will eventually be removed. |
| 367 void BuildServerConfigUpdateMessage( | 368 void BuildServerConfigUpdateMessage( |
| 368 QuicVersion version, | 369 QuicVersion version, |
| 369 base::StringPiece chlo_hash, | 370 base::StringPiece chlo_hash, |
| 370 const SourceAddressTokens& previous_source_address_tokens, | 371 const SourceAddressTokens& previous_source_address_tokens, |
| 371 const IPAddress& server_ip, | 372 const IPAddress& server_ip, |
| 372 const IPAddress& client_ip, | 373 const IPAddress& client_ip, |
| 373 const QuicClock* clock, | 374 const QuicClock* clock, |
| 374 QuicRandom* rand, | 375 QuicRandom* rand, |
| 375 QuicCompressedCertsCache* compressed_certs_cache, | 376 QuicCompressedCertsCache* compressed_certs_cache, |
| 376 const QuicCryptoNegotiatedParameters& params, | 377 const QuicCryptoNegotiatedParameters& params, |
| 377 const CachedNetworkParameters* cached_network_params, | 378 const CachedNetworkParameters* cached_network_params, |
| 379 const QuicTagVector& connection_options, |
| 378 std::unique_ptr<BuildServerConfigUpdateMessageResultCallback> cb) const; | 380 std::unique_ptr<BuildServerConfigUpdateMessageResultCallback> cb) const; |
| 379 | 381 |
| 380 // SetEphemeralKeySource installs an object that can cache ephemeral keys for | 382 // SetEphemeralKeySource installs an object that can cache ephemeral keys for |
| 381 // a short period of time. This object takes ownership of | 383 // a short period of time. This object takes ownership of |
| 382 // |ephemeral_key_source|. If not set then ephemeral keys will be generated | 384 // |ephemeral_key_source|. If not set then ephemeral keys will be generated |
| 383 // per-connection. | 385 // per-connection. |
| 384 void SetEphemeralKeySource(EphemeralKeySource* ephemeral_key_source); | 386 void SetEphemeralKeySource(EphemeralKeySource* ephemeral_key_source); |
| 385 | 387 |
| 386 // Install an externally created StrikeRegisterClient for use to | 388 // Install an externally created StrikeRegisterClient for use to |
| 387 // interact with the strike register. This object takes ownership | 389 // interact with the strike register. This object takes ownership |
| (...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 859 std::string primary_scid; | 861 std::string primary_scid; |
| 860 | 862 |
| 861 private: | 863 private: |
| 862 friend class base::RefCounted<QuicCryptoProof>; | 864 friend class base::RefCounted<QuicCryptoProof>; |
| 863 virtual ~QuicCryptoProof(); | 865 virtual ~QuicCryptoProof(); |
| 864 }; | 866 }; |
| 865 | 867 |
| 866 } // namespace net | 868 } // namespace net |
| 867 | 869 |
| 868 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ | 870 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ |
| OLD | NEW |