Chromium Code Reviews| Index: chrome/browser/net/certificate_error_reporter.h |
| diff --git a/chrome/browser/net/certificate_error_reporter.h b/chrome/browser/net/certificate_error_reporter.h |
| index 3c20ec1c607abe8bd12edc60e4caa39973808ab6..30d95e41f75b64332e6916d422e24e85b6b2ac59 100644 |
| --- a/chrome/browser/net/certificate_error_reporter.h |
| +++ b/chrome/browser/net/certificate_error_reporter.h |
| @@ -40,6 +40,9 @@ class CertificateErrorReporter : public net::URLRequest::Delegate { |
| // to the server. |
| enum CookiesPreference { SEND_COOKIES, DO_NOT_SEND_COOKIES }; |
| + enum ProceedDecision { USER_PROCEEDED, USER_DID_NOT_PROCEED }; |
| + enum Overridable { OVERRIDABLE, NOT_OVERRIDABLE }; |
|
Ryan Sleevi
2015/04/16 01:44:10
First scan: This seems to introduce awareness of i
estark
2015/04/16 02:09:31
Agreed. As I mentioned, I wasn't sure how to avoid
|
| + |
| // Create a certificate error reporter that will send certificate |
| // error reports to |upload_url|, using |request_context| as the |
| // context for the reports. |cookies_preference| controls whether |
| @@ -58,6 +61,7 @@ class CertificateErrorReporter : public net::URLRequest::Delegate { |
| // responsible for enforcing any preconditions (such as obtaining user |
| // opt-in, only sending reports for certain hostnames, checking for |
| // incognito mode, etc.). |
| + virtual void SendReport(ReportType type, const CertLoggerRequest& report); |
|
Ryan Sleevi
2015/04/16 01:44:10
Virtuals + overloads = special place in hell when
|
| virtual void SendReport(ReportType type, |
| const std::string& hostname, |
| const net::SSLInfo& ssl_info); |
| @@ -66,6 +70,18 @@ class CertificateErrorReporter : public net::URLRequest::Delegate { |
| void OnResponseStarted(net::URLRequest* request) override; |
| void OnReadCompleted(net::URLRequest* request, int bytes_read) override; |
| + // Populate the CertLoggerRequest for a report. |
|
Ryan Sleevi
2015/04/16 01:44:10
By making this public, this is beginning to violat
|
| + static void BuildReport(const std::string& hostname, |
| + const net::SSLInfo& ssl_info, |
| + CertLoggerRequest* out_request); |
| + static void BuildReport(const std::string& hostname, |
|
Ryan Sleevi
2015/04/16 01:44:10
ditto overloads again
|
| + const net::SSLInfo& ssl_info, |
| + uint32 validation_result, |
| + uint32 interstitial_reason, |
| + ProceedDecision proceed_decision, |
| + Overridable overridable, |
| + CertLoggerRequest* out_request); |
| + |
| private: |
| // Create a URLRequest with which to send a certificate report to the |
| // server. |
| @@ -76,11 +92,6 @@ class CertificateErrorReporter : public net::URLRequest::Delegate { |
| // collection server. |
| void SendCertLoggerRequest(const CertLoggerRequest& request); |
| - // Populate the CertLoggerRequest for a report. |
| - static void BuildReport(const std::string& hostname, |
| - const net::SSLInfo& ssl_info, |
| - CertLoggerRequest* out_request); |
| - |
| // Performs post-report cleanup. |
| void RequestComplete(net::URLRequest* request); |