Index: chrome/browser/ssl/superfish_blocking_page.h |
diff --git a/chrome/browser/ssl/superfish_blocking_page.h b/chrome/browser/ssl/superfish_blocking_page.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e52aa5abbfbd9b67084702bbef123bc35cb4f38a |
--- /dev/null |
+++ b/chrome/browser/ssl/superfish_blocking_page.h |
@@ -0,0 +1,54 @@ |
+// Copyright 2017 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. |
+ |
+#ifndef CHROME_BROWSER_SSL_SUPERFISH_BLOCKING_PAGE_H_ |
+#define CHROME_BROWSER_SSL_SUPERFISH_BLOCKING_PAGE_H_ |
+ |
+#include "chrome/browser/ssl/ssl_blocking_page.h" |
+ |
+// SuperfishBlockingPage is a subclass of SSLBlockingPage that customizes the |
+// interstitial page to show instructions for removing the Superfish software, |
+// which interferes with HTTPS connections. |
+class SuperfishBlockingPage : public SSLBlockingPage { |
+ public: |
+ // Interstitial type, used in tests. |
+ static InterstitialPageDelegate::TypeID kTypeForTesting; |
+ |
+ ~SuperfishBlockingPage() override{}; |
meacer
2017/06/22 19:06:19
Extra semicolumn
estark
2017/06/22 22:01:05
n/a
|
+ |
+ // Creates a Superfish blocking page. If the blocking page isn't shown, the |
+ // caller is responsible for cleaning up the blocking page, otherwise the |
+ // interstitial takes ownership when shown. |options_mask| must be a bitwise |
+ // mask of SSLErrorUI::SSLErrorOptionsMask values. |
+ static SuperfishBlockingPage* Create( |
+ content::WebContents* web_contents, |
+ int cert_error, |
+ const net::SSLInfo& ssl_info, |
+ const GURL& request_url, |
+ int options_mask, |
+ const base::Time& time_triggered, |
+ std::unique_ptr<SSLCertReporter> ssl_cert_reporter, |
+ const base::Callback<void(content::CertificateRequestResultType)>& |
+ callback); |
+ |
+ // InterstitialPageDelegate method: |
+ InterstitialPageDelegate::TypeID GetTypeForTesting() const override; |
+ |
+ private: |
+ SuperfishBlockingPage( |
+ content::WebContents* web_contents, |
+ const net::SSLInfo& ssl_info, |
+ const GURL& request_url, |
+ int options_mask, |
+ const base::Time& time_triggered, |
+ std::unique_ptr<SSLCertReporter> ssl_cert_reporter, |
+ bool overrideable, |
+ std::unique_ptr<ChromeMetricsHelper> metrics_helper, |
+ const base::Callback<void(content::CertificateRequestResultType)>& |
+ callback); |
+ |
+ DISALLOW_COPY_AND_ASSIGN(SuperfishBlockingPage); |
+}; |
+ |
+#endif // CHROME_BROWSER_SSL_SUPERFISH_BLOCKING_PAGE_H_ |