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

Side by Side Diff: net/quic/crypto/quic_crypto_client_config.h

Issue 209413005: Move Window's specific logic for disabling ECDSA from QuicCryptoyclientConfig (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix comments Created 6 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | net/quic/crypto/quic_crypto_client_config.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 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 <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 // is expected to be shared among servers with the domain suffix. If a server 222 // is expected to be shared among servers with the domain suffix. If a server
223 // matches this suffix, then the server config from another server with the 223 // matches this suffix, then the server config from another server with the
224 // suffix will be used to initialize the cached state for this server. 224 // suffix will be used to initialize the cached state for this server.
225 void AddCanonicalSuffix(const std::string& suffix); 225 void AddCanonicalSuffix(const std::string& suffix);
226 226
227 // Prefers AES-GCM (kAESG) over other AEAD algorithms. Call this method if 227 // Prefers AES-GCM (kAESG) over other AEAD algorithms. Call this method if
228 // the CPU has hardware acceleration for AES-GCM. This method can only be 228 // the CPU has hardware acceleration for AES-GCM. This method can only be
229 // called after SetDefaults(). 229 // called after SetDefaults().
230 void PreferAesGcm(); 230 void PreferAesGcm();
231 231
232 // Disables the use of ECDSA for proof verification.
233 // Call this method on platforms that do not support ECDSA.
234 // TODO(rch): remove this method when we drop support for Windows XP.
235 void DisableEcdsa();
236
232 private: 237 private:
233 typedef std::map<QuicSessionKey, CachedState*> CachedStateMap; 238 typedef std::map<QuicSessionKey, CachedState*> CachedStateMap;
234 239
235 // If the suffix of the hostname in |server_key| is in |canoncial_suffixes_|, 240 // If the suffix of the hostname in |server_key| is in |canoncial_suffixes_|,
236 // then populate |cached| with the canonical cached state from 241 // then populate |cached| with the canonical cached state from
237 // |canonical_server_map_| for that suffix. 242 // |canonical_server_map_| for that suffix.
238 void PopulateFromCanonicalConfig(const QuicSessionKey& server_key, 243 void PopulateFromCanonicalConfig(const QuicSessionKey& server_key,
239 CachedState* cached); 244 CachedState* cached);
240 245
241 // cached_states_ maps from the server_key to the cached information about 246 // cached_states_ maps from the server_key to the cached information about
242 // that server. 247 // that server.
243 CachedStateMap cached_states_; 248 CachedStateMap cached_states_;
244 249
245 // Contains a map of servers which could share the same server config. Map 250 // Contains a map of servers which could share the same server config. Map
246 // from a canonical host suffix/port/scheme to a representative server with 251 // from a canonical host suffix/port/scheme to a representative server with
247 // the canonical suffix, which has a plausible set of initial certificates 252 // the canonical suffix, which has a plausible set of initial certificates
248 // (or at least server public key). 253 // (or at least server public key).
249 std::map<QuicSessionKey, QuicSessionKey> canonical_server_map_; 254 std::map<QuicSessionKey, QuicSessionKey> canonical_server_map_;
250 255
251 // Contains list of suffixes (for exmaple ".c.youtube.com", 256 // Contains list of suffixes (for exmaple ".c.youtube.com",
252 // ".googlevideo.com") of canoncial hostnames. 257 // ".googlevideo.com") of canoncial hostnames.
253 std::vector<std::string> canoncial_suffixes_; 258 std::vector<std::string> canoncial_suffixes_;
254 259
255 scoped_ptr<ProofVerifier> proof_verifier_; 260 scoped_ptr<ProofVerifier> proof_verifier_;
256 scoped_ptr<ChannelIDSigner> channel_id_signer_; 261 scoped_ptr<ChannelIDSigner> channel_id_signer_;
257 262
263 // True if ECDSA should be disabled.
264 bool disable_ecdsa_;
265
258 DISALLOW_COPY_AND_ASSIGN(QuicCryptoClientConfig); 266 DISALLOW_COPY_AND_ASSIGN(QuicCryptoClientConfig);
259 }; 267 };
260 268
261 } // namespace net 269 } // namespace net
262 270
263 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_ 271 #endif // NET_QUIC_CRYPTO_QUIC_CRYPTO_CLIENT_CONFIG_H_
OLDNEW
« no previous file with comments | « no previous file | net/quic/crypto/quic_crypto_client_config.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698