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

Unified Diff: components/certificate_reporting/error_reporter.cc

Issue 2483993002: Add report_id to ErrorReporter interface. (Closed)
Patch Set: Created 4 years, 1 month 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: components/certificate_reporting/error_reporter.cc
diff --git a/components/certificate_reporting/error_reporter.cc b/components/certificate_reporting/error_reporter.cc
index 57f372c53aa6f7e0eef83fa0a90934b6dbeac4b9..ed5e795fc413dfb6627767acaa3bc4d9767d5830 100644
--- a/components/certificate_reporting/error_reporter.cc
+++ b/components/certificate_reporting/error_reporter.cc
@@ -11,8 +11,6 @@
#include "base/logging.h"
#include "base/memory/ptr_util.h"
-#include "base/metrics/histogram_macros.h"
-#include "base/metrics/sparse_histogram.h"
#include "components/certificate_reporting/encrypted_cert_logger.pb.h"
#include "crypto/aead.h"
#include "crypto/curve25519.h"
@@ -100,29 +98,17 @@ bool EncryptSerializedReport(const uint8_t* server_public_key,
return true;
}
-// Records an UMA histogram of the net errors when certificate reports
-// fail to send.
-void RecordUMAOnFailure(const GURL& report_uri, int net_error, int report_id) {
- UMA_HISTOGRAM_SPARSE_SLOWLY("SSL.CertificateErrorReportFailure", -net_error);
-}
-
-void DoNothingOnSuccess(int report_id) {}
-
} // namespace
ErrorReporter::ErrorReporter(
net::URLRequestContext* request_context,
const GURL& upload_url,
net::ReportSender::CookiesPreference cookies_preference)
- : ErrorReporter(
- upload_url,
- kServerPublicKey,
- kServerPublicKeyVersion,
- base::MakeUnique<net::ReportSender>(request_context,
- cookies_preference,
- base::Bind(RecordUMAOnFailure),
- base::Bind(DoNothingOnSuccess))) {
-}
+ : ErrorReporter(upload_url,
+ kServerPublicKey,
+ kServerPublicKeyVersion,
+ base::MakeUnique<net::ReportSender>(request_context,
+ cookies_preference)) {}
ErrorReporter::ErrorReporter(
const GURL& upload_url,
@@ -140,22 +126,23 @@ ErrorReporter::ErrorReporter(
ErrorReporter::~ErrorReporter() {}
void ErrorReporter::SendExtendedReportingReport(
- const std::string& serialized_report) {
+ const std::string& serialized_report,
+ int report_id) {
if (upload_url_.SchemeIsCryptographic()) {
certificate_report_sender_->Send(upload_url_, "application/octet-stream",
- serialized_report, 0);
- } else {
- EncryptedCertLoggerRequest encrypted_report;
- if (!EncryptSerializedReport(server_public_key_, server_public_key_version_,
- serialized_report, &encrypted_report)) {
- LOG(ERROR) << "Failed to encrypt serialized report.";
- return;
- }
- std::string serialized_encrypted_report;
- encrypted_report.SerializeToString(&serialized_encrypted_report);
- certificate_report_sender_->Send(upload_url_, "application/octet-stream",
- serialized_encrypted_report, 0);
+ serialized_report, report_id);
+ return;
}
+ EncryptedCertLoggerRequest encrypted_report;
+ if (!EncryptSerializedReport(server_public_key_, server_public_key_version_,
+ serialized_report, &encrypted_report)) {
+ LOG(ERROR) << "Failed to encrypt serialized report.";
+ return;
+ }
+ std::string serialized_encrypted_report;
+ encrypted_report.SerializeToString(&serialized_encrypted_report);
+ certificate_report_sender_->Send(upload_url_, "application/octet-stream",
+ serialized_encrypted_report, report_id);
}
// Used only by tests.
@@ -181,4 +168,14 @@ bool ErrorReporter::DecryptErrorReport(
decrypted_serialized_report);
}
+void ErrorReporter::SetErrorCallback(
+ const base::Callback<void(const GURL&, int, int)>& callback) {
+ certificate_report_sender_->SetErrorCallback(callback);
+}
+
+void ErrorReporter::SetSuccessCallback(
+ const base::Callback<void(int)>& callback) {
+ certificate_report_sender_->SetSuccessCallback(callback);
+}
+
} // namespace certificate_reporting

Powered by Google App Engine
This is Rietveld 408576698