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

Unified Diff: net/quic/crypto/quic_crypto_server_config.cc

Issue 266243004: Clang format slam. Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 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 side-by-side diff with in-line comments
Download patch
Index: net/quic/crypto/quic_crypto_server_config.cc
diff --git a/net/quic/crypto/quic_crypto_server_config.cc b/net/quic/crypto/quic_crypto_server_config.cc
index 0a3c1ade1b611bdea15e07251fff498a744d2029..bfa239eb888d2eedff3eaa5e8020a732b4db4555 100644
--- a/net/quic/crypto/quic_crypto_server_config.cc
+++ b/net/quic/crypto/quic_crypto_server_config.cc
@@ -88,8 +88,7 @@ struct ValidateClientHelloResultCallback::Result {
QuicWallTime in_now)
: client_hello(in_client_hello),
info(in_client_ip, in_now),
- error_code(QUIC_NO_ERROR) {
- }
+ error_code(QUIC_NO_ERROR) {}
CryptoHandshakeMessage client_hello;
ClientHelloInfo info;
@@ -101,8 +100,7 @@ class ValidateClientHelloHelper {
public:
ValidateClientHelloHelper(ValidateClientHelloResultCallback::Result* result,
ValidateClientHelloResultCallback* done_cb)
- : result_(result), done_cb_(done_cb) {
- }
+ : result_(result), done_cb_(done_cb) {}
~ValidateClientHelloHelper() {
LOG_IF(DFATAL, done_cb_ != NULL)
@@ -116,9 +114,7 @@ class ValidateClientHelloHelper {
DetachCallback();
}
- void StartedAsyncCallback() {
- DetachCallback();
- }
+ void StartedAsyncCallback() { DetachCallback(); }
private:
void DetachCallback() {
@@ -138,8 +134,7 @@ class VerifyNonceIsValidAndUniqueCallback
VerifyNonceIsValidAndUniqueCallback(
ValidateClientHelloResultCallback::Result* result,
ValidateClientHelloResultCallback* done_cb)
- : result_(result), done_cb_(done_cb) {
- }
+ : result_(result), done_cb_(done_cb) {}
protected:
virtual void RunImpl(bool nonce_is_valid_and_unique) OVERRIDE {
@@ -179,7 +174,8 @@ void ValidateClientHelloResultCallback::Run(const Result* result) {
QuicCryptoServerConfig::ConfigOptions::ConfigOptions()
: expiry_time(QuicWallTime::Zero()),
channel_id_enabled(false),
- p256(false) {}
+ p256(false) {
+}
QuicCryptoServerConfig::QuicCryptoServerConfig(
StringPiece source_address_token_secret,
@@ -369,7 +365,8 @@ bool QuicCryptoServerConfig::SetConfigs(
bool ok = true;
for (vector<QuicServerConfigProtobuf*>::const_iterator i = protobufs.begin();
- i != protobufs.end(); ++i) {
+ i != protobufs.end();
+ ++i) {
scoped_refptr<Config> config(ParseConfigProtobuf(*i));
if (!config.get()) {
ok = false;
@@ -394,31 +391,32 @@ bool QuicCryptoServerConfig::SetConfigs(
for (vector<scoped_refptr<Config> >::const_iterator i =
parsed_configs.begin();
- i != parsed_configs.end(); ++i) {
+ i != parsed_configs.end();
+ ++i) {
scoped_refptr<Config> config = *i;
ConfigMap::iterator it = configs_.find(config->id);
if (it != configs_.end()) {
- VLOG(1)
- << "Keeping scid: " << base::HexEncode(
- config->id.data(), config->id.size())
- << " orbit: " << base::HexEncode(
- reinterpret_cast<const char *>(config->orbit), kOrbitSize)
- << " new primary_time " << config->primary_time.ToUNIXSeconds()
- << " old primary_time " << it->second->primary_time.ToUNIXSeconds()
- << " new priority " << config->priority
- << " old priority " << it->second->priority;
+ VLOG(1) << "Keeping scid: "
+ << base::HexEncode(config->id.data(), config->id.size())
+ << " orbit: "
+ << base::HexEncode(reinterpret_cast<const char*>(config->orbit),
+ kOrbitSize) << " new primary_time "
+ << config->primary_time.ToUNIXSeconds() << " old primary_time "
+ << it->second->primary_time.ToUNIXSeconds() << " new priority "
+ << config->priority << " old priority " << it->second->priority;
// Update primary_time and priority.
it->second->primary_time = config->primary_time;
it->second->priority = config->priority;
new_configs.insert(*it);
} else {
- VLOG(1) << "Adding scid: " << base::HexEncode(
- config->id.data(), config->id.size())
- << " orbit: " << base::HexEncode(
- reinterpret_cast<const char *>(config->orbit), kOrbitSize)
- << " primary_time " << config->primary_time.ToUNIXSeconds()
- << " priority " << config->priority;
+ VLOG(1) << "Adding scid: "
+ << base::HexEncode(config->id.data(), config->id.size())
+ << " orbit: "
+ << base::HexEncode(reinterpret_cast<const char*>(config->orbit),
+ kOrbitSize) << " primary_time "
+ << config->primary_time.ToUNIXSeconds() << " priority "
+ << config->priority;
new_configs.insert(make_pair(config->id, config));
}
}
@@ -434,8 +432,8 @@ bool QuicCryptoServerConfig::SetConfigs(
void QuicCryptoServerConfig::GetConfigIds(vector<string>* scids) const {
base::AutoLock locked(configs_lock_);
- for (ConfigMap::const_iterator it = configs_.begin();
- it != configs_.end(); ++it) {
+ for (ConfigMap::const_iterator it = configs_.begin(); it != configs_.end();
+ ++it) {
scids->push_back(it->first);
}
}
@@ -492,7 +490,7 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
uint32 initial_flow_control_window_bytes,
const QuicClock* clock,
QuicRandom* rand,
- QuicCryptoNegotiatedParameters *params,
+ QuicCryptoNegotiatedParameters* params,
CryptoHandshakeMessage* out,
string* error_details) const {
DCHECK(error_details);
@@ -559,10 +557,8 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
out->Clear();
- if (!info.valid_source_address_token ||
- !info.client_nonce_well_formed ||
- !info.unique ||
- !requested_config.get()) {
+ if (!info.valid_source_address_token || !info.client_nonce_well_formed ||
+ !info.unique || !requested_config.get()) {
BuildRejection(*primary_config, client_hello, info, rand, out);
return QUIC_NO_ERROR;
}
@@ -570,24 +566,29 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
const QuicTag* their_aeads;
const QuicTag* their_key_exchanges;
size_t num_their_aeads, num_their_key_exchanges;
- if (client_hello.GetTaglist(kAEAD, &their_aeads,
- &num_their_aeads) != QUIC_NO_ERROR ||
- client_hello.GetTaglist(kKEXS, &their_key_exchanges,
+ if (client_hello.GetTaglist(kAEAD, &their_aeads, &num_their_aeads) !=
+ QUIC_NO_ERROR ||
+ client_hello.GetTaglist(kKEXS,
+ &their_key_exchanges,
&num_their_key_exchanges) != QUIC_NO_ERROR ||
- num_their_aeads != 1 ||
- num_their_key_exchanges != 1) {
+ num_their_aeads != 1 || num_their_key_exchanges != 1) {
*error_details = "Missing or invalid AEAD or KEXS";
return QUIC_INVALID_CRYPTO_MESSAGE_PARAMETER;
}
size_t key_exchange_index;
- if (!QuicUtils::FindMutualTag(requested_config->aead, their_aeads,
- num_their_aeads, QuicUtils::LOCAL_PRIORITY,
- &params->aead, NULL) ||
- !QuicUtils::FindMutualTag(
- requested_config->kexs, their_key_exchanges, num_their_key_exchanges,
- QuicUtils::LOCAL_PRIORITY, &params->key_exchange,
- &key_exchange_index)) {
+ if (!QuicUtils::FindMutualTag(requested_config->aead,
+ their_aeads,
+ num_their_aeads,
+ QuicUtils::LOCAL_PRIORITY,
+ &params->aead,
+ NULL) ||
+ !QuicUtils::FindMutualTag(requested_config->kexs,
+ their_key_exchanges,
+ num_their_key_exchanges,
+ QuicUtils::LOCAL_PRIORITY,
+ &params->key_exchange,
+ &key_exchange_index)) {
*error_details = "Unsupported AEAD or KEXS";
return QUIC_CRYPTO_NO_SUPPORT;
}
@@ -641,23 +642,28 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
hkdf_input.append(requested_config->serialized);
CrypterPair crypters;
- if (!CryptoUtils::DeriveKeys(params->initial_premaster_secret, params->aead,
- info.client_nonce, info.server_nonce,
- hkdf_input, CryptoUtils::SERVER, &crypters)) {
+ if (!CryptoUtils::DeriveKeys(params->initial_premaster_secret,
+ params->aead,
+ info.client_nonce,
+ info.server_nonce,
+ hkdf_input,
+ CryptoUtils::SERVER,
+ &crypters)) {
*error_details = "Symmetric key setup failed";
return QUIC_CRYPTO_SYMMETRIC_KEY_SETUP_FAILED;
}
- scoped_ptr<QuicData> cetv_plaintext(crypters.decrypter->DecryptPacket(
- 0 /* sequence number */, StringPiece() /* associated data */,
- cetv_ciphertext));
+ scoped_ptr<QuicData> cetv_plaintext(
+ crypters.decrypter->DecryptPacket(0 /* sequence number */,
+ StringPiece() /* associated data */,
+ cetv_ciphertext));
if (!cetv_plaintext.get()) {
*error_details = "CETV decryption failure";
return QUIC_INVALID_CRYPTO_MESSAGE_PARAMETER;
}
- scoped_ptr<CryptoHandshakeMessage> cetv(CryptoFramer::ParseMessage(
- cetv_plaintext->AsStringPiece()));
+ scoped_ptr<CryptoHandshakeMessage> cetv(
+ CryptoFramer::ParseMessage(cetv_plaintext->AsStringPiece()));
if (!cetv.get()) {
*error_details = "CETV parse error";
return QUIC_INVALID_CRYPTO_MESSAGE_PARAMETER;
@@ -681,8 +687,11 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
hkdf_input.append(QuicCryptoConfig::kInitialLabel, label_len);
hkdf_input.append(hkdf_suffix);
- if (!CryptoUtils::DeriveKeys(params->initial_premaster_secret, params->aead,
- info.client_nonce, info.server_nonce, hkdf_input,
+ if (!CryptoUtils::DeriveKeys(params->initial_premaster_secret,
+ params->aead,
+ info.client_nonce,
+ info.server_nonce,
+ hkdf_input,
CryptoUtils::SERVER,
&params->initial_crypters)) {
*error_details = "Symmetric key setup failed";
@@ -693,7 +702,10 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
if (ephemeral_key_source_.get()) {
params->forward_secure_premaster_secret =
ephemeral_key_source_->CalculateForwardSecureKey(
- key_exchange, rand, clock->ApproximateNow(), public_value,
+ key_exchange,
+ rand,
+ clock->ApproximateNow(),
+ public_value,
&forward_secure_public_value);
} else {
scoped_ptr<KeyExchange> forward_secure_key_exchange(
@@ -714,10 +726,13 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
label_len);
forward_secure_hkdf_input.append(hkdf_suffix);
- if (!CryptoUtils::DeriveKeys(
- params->forward_secure_premaster_secret, params->aead,
- info.client_nonce, info.server_nonce, forward_secure_hkdf_input,
- CryptoUtils::SERVER, &params->forward_secure_crypters)) {
+ if (!CryptoUtils::DeriveKeys(params->forward_secure_premaster_secret,
+ params->aead,
+ info.client_nonce,
+ info.server_nonce,
+ forward_secure_hkdf_input,
+ CryptoUtils::SERVER,
+ &params->forward_secure_crypters)) {
*error_details = "Symmetric key setup failed";
return QUIC_CRYPTO_SYMMETRIC_KEY_SETUP_FAILED;
}
@@ -725,15 +740,13 @@ QuicErrorCode QuicCryptoServerConfig::ProcessClientHello(
out->set_tag(kSHLO);
QuicTagVector supported_version_tags;
for (size_t i = 0; i < supported_versions.size(); ++i) {
- supported_version_tags.push_back
- (QuicVersionToQuicTag(supported_versions[i]));
+ supported_version_tags.push_back(
+ QuicVersionToQuicTag(supported_versions[i]));
}
out->SetVector(kVER, supported_version_tags);
- out->SetStringPiece(kSourceAddressTokenTag,
- NewSourceAddressToken(
- *requested_config,
- client_address, rand,
- info.now));
+ out->SetStringPiece(
+ kSourceAddressTokenTag,
+ NewSourceAddressToken(*requested_config, client_address, rand, info.now));
QuicSocketAddressCoder address_coder(client_address);
out->SetStringPiece(kCADR, address_coder.Encode());
out->SetStringPiece(kPUBS, forward_secure_public_value);
@@ -786,8 +799,8 @@ void QuicCryptoServerConfig::SelectNewPrimaryConfig(
vector<scoped_refptr<Config> > configs;
configs.reserve(configs_.size());
- for (ConfigMap::const_iterator it = configs_.begin();
- it != configs_.end(); ++it) {
+ for (ConfigMap::const_iterator it = configs_.begin(); it != configs_.end();
+ ++it) {
// TODO(avd) Exclude expired configs?
configs.push_back(it->second);
}
@@ -836,8 +849,8 @@ void QuicCryptoServerConfig::SelectNewPrimaryConfig(
new_primary->is_primary = true;
DVLOG(1) << "New primary config. orbit: "
<< base::HexEncode(
- reinterpret_cast<const char*>(primary_config_->orbit),
- kOrbitSize);
+ reinterpret_cast<const char*>(primary_config_->orbit),
+ kOrbitSize);
if (primary_config_changed_cb_.get() != NULL) {
primary_config_changed_cb_->Run(primary_config_->id);
}
@@ -855,8 +868,8 @@ void QuicCryptoServerConfig::SelectNewPrimaryConfig(
new_primary->is_primary = true;
DVLOG(1) << "New primary config. orbit: "
<< base::HexEncode(
- reinterpret_cast<const char*>(primary_config_->orbit),
- kOrbitSize)
+ reinterpret_cast<const char*>(primary_config_->orbit),
+ kOrbitSize)
<< " scid: " << base::HexEncode(primary_config_->id.data(),
primary_config_->id.size());
next_config_promotion_time_ = QuicWallTime::Zero();
@@ -872,8 +885,7 @@ void QuicCryptoServerConfig::EvaluateClientHello(
ValidateClientHelloResultCallback* done_cb) const {
ValidateClientHelloHelper helper(client_hello_state, done_cb);
- const CryptoHandshakeMessage& client_hello =
- client_hello_state->client_hello;
+ const CryptoHandshakeMessage& client_hello = client_hello_state->client_hello;
ClientHelloInfo* info = &(client_hello_state->info);
if (client_hello.size() < kClientHelloMinimumSize) {
@@ -892,10 +904,8 @@ void QuicCryptoServerConfig::EvaluateClientHello(
StringPiece srct;
if (requested_config.get() != NULL &&
client_hello.GetStringPiece(kSourceAddressTokenTag, &srct) &&
- ValidateSourceAddressToken(*requested_config,
- srct,
- info->client_ip,
- info->now)) {
+ ValidateSourceAddressToken(
+ *requested_config, srct, info->client_ip, info->now)) {
info->valid_source_address_token = true;
} else {
// No server config with the requested ID, or no valid source address token.
@@ -940,9 +950,9 @@ void QuicCryptoServerConfig::EvaluateClientHello(
static_cast<uint32>(info->now.ToUNIXSeconds()),
strike_register_window_secs_,
primary_orbit,
- strike_register_no_startup_period_ ?
- StrikeRegister::NO_STARTUP_PERIOD_NEEDED :
- StrikeRegister::DENY_REQUESTS_AT_STARTUP));
+ strike_register_no_startup_period_
+ ? StrikeRegister::NO_STARTUP_PERIOD_NEEDED
+ : StrikeRegister::DENY_REQUESTS_AT_STARTUP));
}
strike_register_client = strike_register_client_.get();
}
@@ -962,12 +972,9 @@ void QuicCryptoServerConfig::BuildRejection(
CryptoHandshakeMessage* out) const {
out->set_tag(kREJ);
out->SetStringPiece(kSCFG, config.serialized);
- out->SetStringPiece(kSourceAddressTokenTag,
- NewSourceAddressToken(
- config,
- info.client_ip,
- rand,
- info.now));
+ out->SetStringPiece(
+ kSourceAddressTokenTag,
+ NewSourceAddressToken(config, info.client_ip, rand, info.now));
if (replay_protection_) {
out->SetStringPiece(kServerNonceTag, NewServerNonce(rand, info.now));
}
@@ -977,9 +984,9 @@ void QuicCryptoServerConfig::BuildRejection(
size_t num_their_proof_demands;
if (proof_source_.get() == NULL ||
- client_hello.GetTaglist(kPDMD, &their_proof_demands,
- &num_their_proof_demands) !=
- QUIC_NO_ERROR) {
+ client_hello.GetTaglist(kPDMD,
+ &their_proof_demands,
+ &num_their_proof_demands) != QUIC_NO_ERROR) {
return;
}
@@ -1002,8 +1009,11 @@ void QuicCryptoServerConfig::BuildRejection(
const vector<string>* certs;
string signature;
- if (!proof_source_->GetProof(info.sni.as_string(), config.serialized,
- x509_ecdsa_supported, &certs, &signature)) {
+ if (!proof_source_->GetProof(info.sni.as_string(),
+ config.serialized,
+ x509_ecdsa_supported,
+ &certs,
+ &signature)) {
return;
}
@@ -1012,9 +1022,11 @@ void QuicCryptoServerConfig::BuildRejection(
client_hello.GetStringPiece(kCCS, &their_common_set_hashes);
client_hello.GetStringPiece(kCCRT, &their_cached_cert_hashes);
- const string compressed = CertCompressor::CompressChain(
- *certs, their_common_set_hashes, their_cached_cert_hashes,
- config.common_cert_sets);
+ const string compressed =
+ CertCompressor::CompressChain(*certs,
+ their_common_set_hashes,
+ their_cached_cert_hashes,
+ config.common_cert_sets);
// kREJOverheadBytes is a very rough estimate of how much of a REJ
// message is taken up by things other than the certificates.
@@ -1123,7 +1135,7 @@ QuicCryptoServerConfig::ParseConfigProtobuf(
!strike_register_client->IsKnownOrbit(orbit)) {
LOG(WARNING)
<< "Rejecting server config with orbit that the strike register "
- "client doesn't know about.";
+ "client doesn't know about.";
return NULL;
}
}
@@ -1192,7 +1204,8 @@ QuicCryptoServerConfig::ParseConfigProtobuf(
}
for (vector<KeyExchange*>::const_iterator i = config->key_exchanges.begin();
- i != config->key_exchanges.end(); ++i) {
+ i != config->key_exchanges.end();
+ ++i) {
if ((*i)->tag() == tag) {
LOG(WARNING) << "Duplicate key exchange in config: " << tag;
return NULL;
@@ -1273,11 +1286,10 @@ void QuicCryptoServerConfig::AcquirePrimaryConfigChangedCb(
primary_config_changed_cb_.reset(cb);
}
-string QuicCryptoServerConfig::NewSourceAddressToken(
- const Config& config,
- const IPEndPoint& ip,
- QuicRandom* rand,
- QuicWallTime now) const {
+string QuicCryptoServerConfig::NewSourceAddressToken(const Config& config,
+ const IPEndPoint& ip,
+ QuicRandom* rand,
+ QuicWallTime now) const {
SourceAddressToken source_address_token;
source_address_token.set_ip(IPAddressToPackedString(ip.address()));
source_address_token.set_timestamp(now.ToUNIXSeconds());
@@ -1369,8 +1381,8 @@ bool QuicCryptoServerConfig::ValidateServerNonce(StringPiece token,
uint8 server_nonce[32];
memcpy(server_nonce, plaintext.data(), 4);
memcpy(server_nonce + 4, server_nonce_orbit_, sizeof(server_nonce_orbit_));
- memcpy(server_nonce + 4 + sizeof(server_nonce_orbit_), plaintext.data() + 4,
- 20);
+ memcpy(
+ server_nonce + 4 + sizeof(server_nonce_orbit_), plaintext.data() + 4, 20);
COMPILE_ASSERT(4 + sizeof(server_nonce_orbit_) + 20 == sizeof(server_nonce),
bad_nonce_buffer_length);
@@ -1378,11 +1390,12 @@ bool QuicCryptoServerConfig::ValidateServerNonce(StringPiece token,
{
base::AutoLock auto_lock(server_nonce_strike_register_lock_);
if (server_nonce_strike_register_.get() == NULL) {
- server_nonce_strike_register_.reset(new StrikeRegister(
- server_nonce_strike_register_max_entries_,
- static_cast<uint32>(now.ToUNIXSeconds()),
- server_nonce_strike_register_window_secs_, server_nonce_orbit_,
- StrikeRegister::NO_STARTUP_PERIOD_NEEDED));
+ server_nonce_strike_register_.reset(
+ new StrikeRegister(server_nonce_strike_register_max_entries_,
+ static_cast<uint32>(now.ToUNIXSeconds()),
+ server_nonce_strike_register_window_secs_,
+ server_nonce_orbit_,
+ StrikeRegister::NO_STARTUP_PERIOD_NEEDED));
}
is_unique = server_nonce_strike_register_->Insert(
server_nonce, static_cast<uint32>(now.ToUNIXSeconds()));
@@ -1396,8 +1409,11 @@ QuicCryptoServerConfig::Config::Config()
is_primary(false),
primary_time(QuicWallTime::Zero()),
priority(0),
- source_address_token_boxer(NULL) {}
+ source_address_token_boxer(NULL) {
+}
-QuicCryptoServerConfig::Config::~Config() { STLDeleteElements(&key_exchanges); }
+QuicCryptoServerConfig::Config::~Config() {
+ STLDeleteElements(&key_exchanges);
+}
} // namespace net

Powered by Google App Engine
This is Rietveld 408576698