| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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_CRYPTO_SERVER_CONFIG_H_ | 5 #ifndef NET_QUIC_CRYPTO_CRYPTO_SERVER_CONFIG_H_ |
| 6 #define NET_QUIC_CRYPTO_CRYPTO_SERVER_CONFIG_H_ | 6 #define NET_QUIC_CRYPTO_CRYPTO_SERVER_CONFIG_H_ |
| 7 | 7 |
| 8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
| 9 #include "base/strings/string_piece.h" | 9 #include "base/strings/string_piece.h" |
| 10 #include "base/synchronization/lock.h" | 10 #include "base/synchronization/lock.h" |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 133 // set_source_address_token_future_secs sets the number of seconds into the | 133 // set_source_address_token_future_secs sets the number of seconds into the |
| 134 // future that source-address tokens will be accepted from. Since | 134 // future that source-address tokens will be accepted from. Since |
| 135 // source-address tokens are authenticated, this should only happen if | 135 // source-address tokens are authenticated, this should only happen if |
| 136 // another, valid server has clock-skew. | 136 // another, valid server has clock-skew. |
| 137 void set_source_address_token_future_secs(uint32 future_secs); | 137 void set_source_address_token_future_secs(uint32 future_secs); |
| 138 | 138 |
| 139 // set_source_address_token_lifetime_secs sets the number of seconds that a | 139 // set_source_address_token_lifetime_secs sets the number of seconds that a |
| 140 // source-address token will be valid for. | 140 // source-address token will be valid for. |
| 141 void set_source_address_token_lifetime_secs(uint32 lifetime_secs); | 141 void set_source_address_token_lifetime_secs(uint32 lifetime_secs); |
| 142 | 142 |
| 143 // set_server_nonce_strike_register_max_entries sets the number of entries in | |
| 144 // the server-nonce strike-register. This is used to record that server nonce | |
| 145 // values have been used. If the number of entries is too small then clients | |
| 146 // which are depending on server nonces may fail to handshake because their | |
| 147 // nonce has expired in the amount of time it took to go from the server to | |
| 148 // the client and back. | |
| 149 void set_server_nonce_strike_register_max_entries(uint32 max_entries); | |
| 150 | |
| 151 // set_server_nonce_strike_register_window_secs sets the number of seconds | |
| 152 // around the current time that the server-nonce strike-register will accept | |
| 153 // nonces from. Setting a larger value allows for clients to delay follow-up | |
| 154 // client hellos for longer and still use server nonces as proofs of | |
| 155 // uniqueness. | |
| 156 void set_server_nonce_strike_register_window_secs(uint32 window_secs); | |
| 157 | |
| 158 private: | 143 private: |
| 159 friend class test::QuicCryptoServerConfigPeer; | 144 friend class test::QuicCryptoServerConfigPeer; |
| 160 | 145 |
| 161 // Config represents a server config: a collection of preferences and | 146 // Config represents a server config: a collection of preferences and |
| 162 // Diffie-Hellman public values. | 147 // Diffie-Hellman public values. |
| 163 struct Config : public QuicCryptoConfig { | 148 struct Config : public QuicCryptoConfig { |
| 164 Config(); | 149 Config(); |
| 165 ~Config(); | 150 ~Config(); |
| 166 | 151 |
| 167 // serialized contains the bytes of this server config, suitable for sending | 152 // serialized contains the bytes of this server config, suitable for sending |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 255 uint32 strike_register_window_secs_; | 240 uint32 strike_register_window_secs_; |
| 256 uint32 source_address_token_future_secs_; | 241 uint32 source_address_token_future_secs_; |
| 257 uint32 source_address_token_lifetime_secs_; | 242 uint32 source_address_token_lifetime_secs_; |
| 258 uint32 server_nonce_strike_register_max_entries_; | 243 uint32 server_nonce_strike_register_max_entries_; |
| 259 uint32 server_nonce_strike_register_window_secs_; | 244 uint32 server_nonce_strike_register_window_secs_; |
| 260 }; | 245 }; |
| 261 | 246 |
| 262 } // namespace net | 247 } // namespace net |
| 263 | 248 |
| 264 #endif // NET_QUIC_CRYPTO_CRYPTO_SERVER_CONFIG_H_ | 249 #endif // NET_QUIC_CRYPTO_CRYPTO_SERVER_CONFIG_H_ |
| OLD | NEW |