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 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 // QuicCryptoServerConfig contains the crypto configuration of a QUIC server. | 118 // QuicCryptoServerConfig contains the crypto configuration of a QUIC server. |
119 // Unlike a client, a QUIC server can have multiple configurations active in | 119 // Unlike a client, a QUIC server can have multiple configurations active in |
120 // order to support clients resuming with a previous configuration. | 120 // order to support clients resuming with a previous configuration. |
121 // TODO(agl): when adding configurations at runtime is added, this object will | 121 // TODO(agl): when adding configurations at runtime is added, this object will |
122 // need to consider locking. | 122 // need to consider locking. |
123 class NET_EXPORT_PRIVATE QuicCryptoServerConfig { | 123 class NET_EXPORT_PRIVATE QuicCryptoServerConfig { |
124 public: | 124 public: |
125 // ConfigOptions contains options for generating server configs. | 125 // ConfigOptions contains options for generating server configs. |
126 struct NET_EXPORT_PRIVATE ConfigOptions { | 126 struct NET_EXPORT_PRIVATE ConfigOptions { |
127 ConfigOptions(); | 127 ConfigOptions(); |
| 128 ConfigOptions(const ConfigOptions& other); |
128 | 129 |
129 // expiry_time is the time, in UNIX seconds, when the server config will | 130 // expiry_time is the time, in UNIX seconds, when the server config will |
130 // expire. If unset, it defaults to the current time plus six months. | 131 // expire. If unset, it defaults to the current time plus six months. |
131 QuicWallTime expiry_time; | 132 QuicWallTime expiry_time; |
132 // channel_id_enabled controls whether the server config will indicate | 133 // channel_id_enabled controls whether the server config will indicate |
133 // support for ChannelIDs. | 134 // support for ChannelIDs. |
134 bool channel_id_enabled; | 135 bool channel_id_enabled; |
135 // token_binding_enabled controls whether the server config will indicate | 136 // token_binding_enabled controls whether the server config will indicate |
136 // support for Token Binding. | 137 // support for Token Binding. |
137 bool token_binding_enabled; | 138 bool token_binding_enabled; |
(...skipping 521 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
659 std::string cert_sct; | 660 std::string cert_sct; |
660 // The server config that is used for this proof (and the rest of the | 661 // The server config that is used for this proof (and the rest of the |
661 // request). | 662 // request). |
662 scoped_refptr<QuicCryptoServerConfig::Config> config; | 663 scoped_refptr<QuicCryptoServerConfig::Config> config; |
663 std::string primary_scid; | 664 std::string primary_scid; |
664 }; | 665 }; |
665 | 666 |
666 } // namespace net | 667 } // namespace net |
667 | 668 |
668 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ | 669 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_SERVER_CONFIG_H_ |
OLD | NEW |