| Index: chrome/browser/ssl/ssl_blocking_page.h
|
| diff --git a/chrome/browser/ssl/ssl_blocking_page.h b/chrome/browser/ssl/ssl_blocking_page.h
|
| index fa510085be5881ff9c8d91b297a9ea63744bde2b..062c3b99df422f3e03ed7c6d48a01808d0643d96 100644
|
| --- a/chrome/browser/ssl/ssl_blocking_page.h
|
| +++ b/chrome/browser/ssl/ssl_blocking_page.h
|
| @@ -13,19 +13,10 @@
|
| #include "base/task/cancelable_task_tracker.h"
|
| #include "base/time/time.h"
|
| #include "chrome/browser/history/history_service.h"
|
| -#include "content/public/browser/interstitial_page_delegate.h"
|
| +#include "chrome/browser/interstitials/security_interstitial_page.h"
|
| #include "net/ssl/ssl_info.h"
|
| #include "url/gurl.h"
|
|
|
| -namespace base {
|
| -class DictionaryValue;
|
| -}
|
| -
|
| -namespace content {
|
| -class InterstitialPage;
|
| -class WebContents;
|
| -}
|
| -
|
| #if defined(ENABLE_EXTENSIONS)
|
| namespace extensions {
|
| class ExperienceSamplingEvent;
|
| @@ -37,7 +28,7 @@ class SSLErrorClassification;
|
| // This class is responsible for showing/hiding the interstitial page that is
|
| // shown when a certificate error happens.
|
| // It deletes itself when the interstitial page is closed.
|
| -class SSLBlockingPage : public content::InterstitialPageDelegate {
|
| +class SSLBlockingPage : public SecurityInterstitialPage {
|
| public:
|
| // These represent the commands sent from the interstitial JavaScript. They
|
| // are defined in chrome/browser/resources/ssl/ssl_errors_common.js.
|
| @@ -57,10 +48,10 @@ class SSLBlockingPage : public content::InterstitialPageDelegate {
|
| EXPIRED_BUT_PREVIOUSLY_ALLOWED = 1 << 2
|
| };
|
|
|
| - ~SSLBlockingPage() override;
|
| + // Interstitial type, used in tests.
|
| + static const void* kTypeForTesting;
|
|
|
| - // Create an interstitial and show it.
|
| - void Show();
|
| + ~SSLBlockingPage() override;
|
|
|
| // Creates an SSL blocking page. If the blocking page isn't shown, the caller
|
| // is responsible for cleaning up the blocking page, otherwise the
|
| @@ -73,6 +64,9 @@ class SSLBlockingPage : public content::InterstitialPageDelegate {
|
| int options_mask,
|
| const base::Callback<void(bool)>& callback);
|
|
|
| + // SecurityInterstitialPage method:
|
| + const void* GetTypeForTesting() const override;
|
| +
|
| // A method that sets strings in the specified dictionary from the passed
|
| // vector so that they can be used to resource the ssl_roadblock.html/
|
| // ssl_error.html files.
|
| @@ -82,13 +76,17 @@ class SSLBlockingPage : public content::InterstitialPageDelegate {
|
|
|
| protected:
|
| // InterstitialPageDelegate implementation.
|
| - std::string GetHTMLContents() override;
|
| void CommandReceived(const std::string& command) override;
|
| void OverrideEntry(content::NavigationEntry* entry) override;
|
| void OverrideRendererPrefs(content::RendererPreferences* prefs) override;
|
| void OnProceed() override;
|
| void OnDontProceed() override;
|
|
|
| + // SecurityInterstitialPage implementation:
|
| + bool ShouldCreateNewNavigation() const override;
|
| + void PopulateInterstitialStrings(
|
| + base::DictionaryValue* load_time_data) override;
|
| +
|
| private:
|
| void NotifyDenyCertificate();
|
| void NotifyAllowCertificate();
|
| @@ -98,7 +96,6 @@ class SSLBlockingPage : public content::InterstitialPageDelegate {
|
|
|
| base::Callback<void(bool)> callback_;
|
|
|
| - content::WebContents* web_contents_;
|
| const int cert_error_;
|
| const net::SSLInfo ssl_info_;
|
| const GURL request_url_;
|
| @@ -113,7 +110,6 @@ class SSLBlockingPage : public content::InterstitialPageDelegate {
|
| bool danger_overridable_;
|
| // Has the site requested strict enforcement of certificate errors?
|
| const bool strict_enforcement_;
|
| - content::InterstitialPage* interstitial_page_; // Owns us.
|
| // Is the hostname for an internal network?
|
| bool internal_;
|
| // How many times is this same URL in history?
|
|
|