blob: 36a40bd3c50f454ec29b903951738f6dcfc30e7e [file] [log] [blame]
// Copyright (c) 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "net/base/features.h"
#include <vector>
#include "build/build_config.h"
namespace net {
namespace features {
const base::Feature kAcceptLanguageHeader{"AcceptLanguageHeader",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kCapReferrerToOriginOnCrossOrigin{
"CapReferrerToOriginOnCrossOrigin", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kDnsHttpssvc{"DnsHttpssvc",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::FeatureParam<bool> kDnsHttpssvcUseHttpssvc{
&kDnsHttpssvc, "DnsHttpssvcUseHttpssvc", false};
const base::FeatureParam<bool> kDnsHttpssvcUseIntegrity{
&kDnsHttpssvc, "DnsHttpssvcUseIntegrity", false};
const base::FeatureParam<bool> kDnsHttpssvcEnableQueryOverInsecure{
&kDnsHttpssvc, "DnsHttpssvcEnableQueryOverInsecure", false};
const base::FeatureParam<int> kDnsHttpssvcExtraTimeMs{
&kDnsHttpssvc, "DnsHttpssvcExtraTimeMs", 10};
const base::FeatureParam<int> kDnsHttpssvcExtraTimePercent{
&kDnsHttpssvc, "DnsHttpssvcExtraTimePercent", 5};
const base::FeatureParam<std::string> kDnsHttpssvcExperimentDomains{
&kDnsHttpssvc, "DnsHttpssvcExperimentDomains", ""};
const base::FeatureParam<std::string> kDnsHttpssvcControlDomains{
&kDnsHttpssvc, "DnsHttpssvcControlDomains", ""};
const base::FeatureParam<bool> kDnsHttpssvcControlDomainWildcard{
&kDnsHttpssvc, "DnsHttpssvcControlDomainWildcard", false};
const base::Feature kAvoidH2Reprioritization{"AvoidH2Reprioritization",
base::FEATURE_DISABLED_BY_DEFAULT};
namespace dns_httpssvc_experiment {
base::TimeDelta GetExtraTimeAbsolute() {
DCHECK(base::FeatureList::IsEnabled(features::kDnsHttpssvc));
return base::TimeDelta::FromMilliseconds(kDnsHttpssvcExtraTimeMs.Get());
}
} // namespace dns_httpssvc_experiment
const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSplitCacheByNetworkIsolationKey{
"SplitCacheByNetworkIsolationKey", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSplitHostCacheByNetworkIsolationKey{
"SplitHostCacheByNetworkIsolationKey", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kPartitionConnectionsByNetworkIsolationKey{
"PartitionConnectionsByNetworkIsolationKey",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kPartitionHttpServerPropertiesByNetworkIsolationKey{
"PartitionHttpServerPropertiesByNetworkIsolationKey",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kPartitionSSLSessionsByNetworkIsolationKey{
"PartitionSSLSessionsByNetworkIsolationKey",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kPartitionExpectCTStateByNetworkIsolationKey{
"PartitionExpectCTStateByNetworkIsolationKey",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kExpectCTPruning{"ExpectCTPruning",
base::FEATURE_ENABLED_BY_DEFAULT};
NET_EXPORT extern const base::FeatureParam<int>
kExpectCTPruneMax(&kExpectCTPruning, "ExpectCTPruneMax", 2000);
NET_EXPORT extern const base::FeatureParam<int>
kExpectCTPruneMin(&kExpectCTPruning, "ExpectCTPruneMin", 1800);
NET_EXPORT extern const base::FeatureParam<int> kExpectCTSafeFromPruneDays(
&kExpectCTPruning,
"ExpectCTSafeFromPruneDays",
40);
NET_EXPORT extern const base::FeatureParam<int> kExpectCTMaxEntriesPerNik(
&kExpectCTPruning,
"ExpectCTMaxEntriesPerNik",
20);
NET_EXPORT extern const base::FeatureParam<int>
kExpectCTPruneDelaySecs(&kExpectCTPruning, "ExpectCTPruneDelaySecs", 60);
const base::Feature kTLS13KeyUpdate{"TLS13KeyUpdate",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kPostQuantumCECPQ2{"PostQuantumCECPQ2",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kNetUnusedIdleSocketTimeout{
"NetUnusedIdleSocketTimeout", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSameSiteByDefaultCookies{"SameSiteByDefaultCookies",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kCookiesWithoutSameSiteMustBeSecure{
"CookiesWithoutSameSiteMustBeSecure", base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kShortLaxAllowUnsafeThreshold{
"ShortLaxAllowUnsafeThreshold", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSameSiteDefaultChecksMethodRigorously{
"SameSiteDefaultChecksMethodRigorously", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kRecentHttpSameSiteAccessGrantsLegacyCookieSemantics{
"RecentHttpSameSiteAccessGrantsLegacyCookieSemantics",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::FeatureParam<int>
kRecentHttpSameSiteAccessGrantsLegacyCookieSemanticsMilliseconds{
&kRecentHttpSameSiteAccessGrantsLegacyCookieSemantics,
"RecentHttpSameSiteAccessGrantsLegacyCookieSemanticsMilliseconds", 0};
const base::Feature kRecentCreationTimeGrantsLegacyCookieSemantics{
"RecentCreationTimeGrantsLegacyCookieSemantics",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::FeatureParam<int>
kRecentCreationTimeGrantsLegacyCookieSemanticsMilliseconds{
&kRecentCreationTimeGrantsLegacyCookieSemantics,
"RecentCreationTimeGrantsLegacyCookieSemanticsMilliseconds", 0};
#if BUILDFLAG(BUILTIN_CERT_VERIFIER_FEATURE_SUPPORTED)
const base::Feature kCertVerifierBuiltinFeature{
"CertVerifierBuiltin", base::FEATURE_DISABLED_BY_DEFAULT};
#endif
const base::Feature kAppendFrameOriginToNetworkIsolationKey{
"AppendFrameOriginToNetworkIsolationKey", base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kUseRegistrableDomainInNetworkIsolationKey{
"UseRegistrableDomainInNetworkIsolationKey",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kTurnOffStreamingMediaCaching{
"TurnOffStreamingMediaCaching", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kLegacyTLSEnforced{"LegacyTLSEnforced",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSchemefulSameSite{"SchemefulSameSite",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kTLSLegacyCryptoFallbackForMetrics{
"TLSLegacyCryptoFallbackForMetrics", base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kUseLookalikesForNavigationSuggestions{
"UseLookalikesForNavigationSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kReportPoorConnectivity{"ReportPoorConnectivity",
base::FEATURE_DISABLED_BY_DEFAULT};
} // namespace features
} // namespace net