Commit 2ee1c4a2 authored by Steven Valdez's avatar Steven Valdez Committed by Commit Bot

Add no session_id TLS 1.3 variant.

Bug: 
Change-Id: I398b76a5424d3a4fb66ec78a58855a87cf914ba7
Reviewed-on: https://chromium-review.googlesource.com/575269Reviewed-by: default avatarDavid Benjamin <davidben@chromium.org>
Commit-Queue: Steven Valdez <svaldez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487962}
parent 841a5860
...@@ -773,6 +773,8 @@ const FeatureEntry::Choice kTLS13VariantChoices[] = { ...@@ -773,6 +773,8 @@ const FeatureEntry::Choice kTLS13VariantChoices[] = {
switches::kTLS13VariantExperiment}, switches::kTLS13VariantExperiment},
{flag_descriptions::kTLS13VariantRecordTypeExperiment, {flag_descriptions::kTLS13VariantRecordTypeExperiment,
switches::kTLS13Variant, switches::kTLS13VariantRecordTypeExperiment}, switches::kTLS13Variant, switches::kTLS13VariantRecordTypeExperiment},
{flag_descriptions::kTLS13VariantNoSessionIDExperiment,
switches::kTLS13Variant, switches::kTLS13VariantNoSessionIDExperiment},
}; };
#if !defined(OS_ANDROID) #if !defined(OS_ANDROID)
......
...@@ -1193,6 +1193,8 @@ const char kTLS13VariantDraft[] = "Enabled (Draft)"; ...@@ -1193,6 +1193,8 @@ const char kTLS13VariantDraft[] = "Enabled (Draft)";
const char kTLS13VariantExperiment[] = "Enabled (Experiment)"; const char kTLS13VariantExperiment[] = "Enabled (Experiment)";
const char kTLS13VariantRecordTypeExperiment[] = const char kTLS13VariantRecordTypeExperiment[] =
"Enabled (Record Type Experiment)"; "Enabled (Record Type Experiment)";
const char kTLS13VariantNoSessionIDExperiment[] =
"Enabled (No Session ID Experiment)";
const char kTopDocumentIsolationName[] = "Top document isolation"; const char kTopDocumentIsolationName[] = "Top document isolation";
const char kTopDocumentIsolationDescription[] = const char kTopDocumentIsolationDescription[] =
......
...@@ -714,6 +714,7 @@ extern const char kTLS13VariantDisabled[]; ...@@ -714,6 +714,7 @@ extern const char kTLS13VariantDisabled[];
extern const char kTLS13VariantDraft[]; extern const char kTLS13VariantDraft[];
extern const char kTLS13VariantExperiment[]; extern const char kTLS13VariantExperiment[];
extern const char kTLS13VariantRecordTypeExperiment[]; extern const char kTLS13VariantRecordTypeExperiment[];
extern const char kTLS13VariantNoSessionIDExperiment[];
extern const char kSuggestionsWithSubStringMatchName[]; extern const char kSuggestionsWithSubStringMatchName[];
extern const char kSuggestionsWithSubStringMatchDescription[]; extern const char kSuggestionsWithSubStringMatchDescription[];
......
...@@ -220,6 +220,13 @@ SSLConfigServiceManagerPref::SSLConfigServiceManagerPref( ...@@ -220,6 +220,13 @@ SSLConfigServiceManagerPref::SSLConfigServiceManagerPref(
local_state->SetDefaultPrefValue( local_state->SetDefaultPrefValue(
ssl_config::prefs::kSSLVersionMax, ssl_config::prefs::kSSLVersionMax,
new base::Value(switches::kSSLVersionTLSv13)); new base::Value(switches::kSSLVersionTLSv13));
} else if (tls13_variant == "no-session-id") {
local_state->SetDefaultPrefValue(
ssl_config::prefs::kTLS13Variant,
new base::Value(switches::kTLS13VariantNoSessionIDExperiment));
local_state->SetDefaultPrefValue(
ssl_config::prefs::kSSLVersionMax,
new base::Value(switches::kSSLVersionTLSv13));
} }
PrefChangeRegistrar::NamedChangeCallback local_state_callback = PrefChangeRegistrar::NamedChangeCallback local_state_callback =
......
...@@ -28,5 +28,6 @@ const char kTLS13VariantDisabled[] = "disabled"; ...@@ -28,5 +28,6 @@ const char kTLS13VariantDisabled[] = "disabled";
const char kTLS13VariantDraft[] = "draft"; const char kTLS13VariantDraft[] = "draft";
const char kTLS13VariantExperiment[] = "experiment"; const char kTLS13VariantExperiment[] = "experiment";
const char kTLS13VariantRecordTypeExperiment[] = "record-type"; const char kTLS13VariantRecordTypeExperiment[] = "record-type";
const char kTLS13VariantNoSessionIDExperiment[] = "no-session-id";
} // namespace switches } // namespace switches
...@@ -18,6 +18,7 @@ extern const char kTLS13VariantDisabled[]; ...@@ -18,6 +18,7 @@ extern const char kTLS13VariantDisabled[];
extern const char kTLS13VariantDraft[]; extern const char kTLS13VariantDraft[];
extern const char kTLS13VariantExperiment[]; extern const char kTLS13VariantExperiment[];
extern const char kTLS13VariantRecordTypeExperiment[]; extern const char kTLS13VariantRecordTypeExperiment[];
extern const char kTLS13VariantNoSessionIDExperiment[];
} // namespace switches } // namespace switches
......
...@@ -937,6 +937,9 @@ int SSLClientSocketImpl::Init() { ...@@ -937,6 +937,9 @@ int SSLClientSocketImpl::Init() {
case kTLS13VariantRecordTypeExperiment: case kTLS13VariantRecordTypeExperiment:
SSL_set_tls13_variant(ssl_.get(), tls13_record_type_experiment); SSL_set_tls13_variant(ssl_.get(), tls13_record_type_experiment);
break; break;
case kTLS13VariantNoSessionIDExperiment:
SSL_set_tls13_variant(ssl_.get(), tls13_no_session_id_experiment);
break;
} }
// OpenSSL defaults some options to on, others to off. To avoid ambiguity, // OpenSSL defaults some options to on, others to off. To avoid ambiguity,
......
...@@ -36,9 +36,10 @@ enum TokenBindingParam { ...@@ -36,9 +36,10 @@ enum TokenBindingParam {
}; };
enum TLS13Variant { enum TLS13Variant {
kTLS13VariantDraft = 0, kTLS13VariantDraft,
kTLS13VariantExperiment = 1, kTLS13VariantExperiment,
kTLS13VariantRecordTypeExperiment = 2, kTLS13VariantRecordTypeExperiment,
kTLS13VariantNoSessionIDExperiment,
}; };
// Default minimum protocol version. // Default minimum protocol version.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment