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

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

Issue 1918953003: Landing Recent QUIC changes until 4/22/2016 14:55 UTC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Deleted SpdyFramerTests missed while mergeing 120451808 Created 4 years, 7 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
« no previous file with comments | « net/quic/crypto/crypto_protocol.h ('k') | net/quic/crypto/quic_crypto_server_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 #include "net/quic/crypto/quic_crypto_client_config.h" 5 #include "net/quic/crypto/quic_crypto_client_config.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/metrics/histogram_macros.h" 9 #include "base/metrics/histogram_macros.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
11 #include "base/strings/string_util.h" 11 #include "base/strings/string_util.h"
12 #include "net/quic/crypto/cert_compressor.h" 12 #include "net/quic/crypto/cert_compressor.h"
13 #include "net/quic/crypto/chacha20_poly1305_rfc7539_encrypter.h" 13 #include "net/quic/crypto/chacha20_poly1305_encrypter.h"
14 #include "net/quic/crypto/channel_id.h" 14 #include "net/quic/crypto/channel_id.h"
15 #include "net/quic/crypto/common_cert_set.h" 15 #include "net/quic/crypto/common_cert_set.h"
16 #include "net/quic/crypto/crypto_framer.h" 16 #include "net/quic/crypto/crypto_framer.h"
17 #include "net/quic/crypto/crypto_utils.h" 17 #include "net/quic/crypto/crypto_utils.h"
18 #include "net/quic/crypto/curve25519_key_exchange.h" 18 #include "net/quic/crypto/curve25519_key_exchange.h"
19 #include "net/quic/crypto/key_exchange.h" 19 #include "net/quic/crypto/key_exchange.h"
20 #include "net/quic/crypto/p256_key_exchange.h" 20 #include "net/quic/crypto/p256_key_exchange.h"
21 #include "net/quic/crypto/proof_verifier.h" 21 #include "net/quic/crypto/proof_verifier.h"
22 #include "net/quic/crypto/quic_encrypter.h" 22 #include "net/quic/crypto/quic_encrypter.h"
23 #include "net/quic/crypto/quic_random.h" 23 #include "net/quic/crypto/quic_random.h"
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 << "Attempting to consume a server nonce that was never designated."; 370 << "Attempting to consume a server nonce that was never designated.";
371 return ""; 371 return "";
372 } 372 }
373 const string server_nonce = server_nonces_.front(); 373 const string server_nonce = server_nonces_.front();
374 server_nonces_.pop(); 374 server_nonces_.pop();
375 return server_nonce; 375 return server_nonce;
376 } 376 }
377 377
378 void QuicCryptoClientConfig::SetDefaults() { 378 void QuicCryptoClientConfig::SetDefaults() {
379 // Key exchange methods. 379 // Key exchange methods.
380 kexs.resize(2); 380 kexs = {kC255, kP256};
381 kexs[0] = kC255;
382 kexs[1] = kP256;
383 381
384 // Authenticated encryption algorithms. Prefer RFC 7539 ChaCha20 by default. 382 // Authenticated encryption algorithms. Prefer RFC 7539 ChaCha20 by default.
385 aead.clear(); 383 aead = {kCC20, kAESG};
386 if (ChaCha20Poly1305Rfc7539Encrypter::IsSupported()) {
387 aead.push_back(kCC20);
388 }
389 aead.push_back(kAESG);
390 384
391 disable_ecdsa_ = false; 385 disable_ecdsa_ = false;
392 } 386 }
393 387
394 QuicCryptoClientConfig::CachedState* QuicCryptoClientConfig::LookupOrCreate( 388 QuicCryptoClientConfig::CachedState* QuicCryptoClientConfig::LookupOrCreate(
395 const QuicServerId& server_id) { 389 const QuicServerId& server_id) {
396 CachedStateMap::const_iterator it = cached_states_.find(server_id); 390 CachedStateMap::const_iterator it = cached_states_.find(server_id);
397 if (it != cached_states_.end()) { 391 if (it != cached_states_.end()) {
398 return it->second; 392 return it->second;
399 } 393 }
(...skipping 592 matching lines...) Expand 10 before | Expand all | Expand 10 after
992 } 986 }
993 987
994 // Update canonical version to point at the "most recent" entry. 988 // Update canonical version to point at the "most recent" entry.
995 canonical_server_map_[suffix_server_id] = server_id; 989 canonical_server_map_[suffix_server_id] = server_id;
996 990
997 server_state->InitializeFrom(*canonical_state); 991 server_state->InitializeFrom(*canonical_state);
998 return true; 992 return true;
999 } 993 }
1000 994
1001 } // namespace net 995 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/crypto/crypto_protocol.h ('k') | net/quic/crypto/quic_crypto_server_config.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698