Index: chrome/browser/net/certificate_error_reporter.cc |
diff --git a/chrome/browser/net/certificate_error_reporter.cc b/chrome/browser/net/certificate_error_reporter.cc |
index c1f15914001244b9ebfb3fb563ea800e3d11f863..6d0c66c387aac5d27dfc5c5db60577edf6ea6029 100644 |
--- a/chrome/browser/net/certificate_error_reporter.cc |
+++ b/chrome/browser/net/certificate_error_reporter.cc |
@@ -7,6 +7,7 @@ |
#include <set> |
#include "base/logging.h" |
+#include "base/metrics/field_trial.h" |
#include "chrome/browser/net/encrypted_cert_logger.pb.h" |
#if defined(USE_OPENSSL) |
@@ -84,6 +85,12 @@ bool EncryptSerializedReport( |
namespace chrome_browser_net { |
+// Constants for the Finch trial that controls whether the |
+// CertificateErrorReporter supports HTTP uploads. |
+const char kHttpCertificateUploadExperiment[] = |
+ "ReportCertificateErrorsOverHttp"; |
+const char kHttpCertificateUploadGroup[] = "UploadReportsOverHttp"; |
+ |
CertificateErrorReporter::CertificateErrorReporter( |
net::URLRequestContext* request_context, |
const GURL& upload_url, |
@@ -174,7 +181,8 @@ scoped_ptr<net::URLRequest> CertificateErrorReporter::CreateURLRequest( |
bool CertificateErrorReporter::IsHttpUploadUrlSupported() { |
#if defined(USE_OPENSSL) |
- return true; |
+ return base::FieldTrialList::FindFullName(kHttpCertificateUploadExperiment) == |
+ kHttpCertificateUploadGroup; |
#else |
return false; |
#endif |