Chromium Code Reviews| Index: chrome/browser/ssl/ssl_error_handler.h |
| diff --git a/chrome/browser/ssl/ssl_error_handler.h b/chrome/browser/ssl/ssl_error_handler.h |
| index 49f0c35e7cce28dec9d9ef5058ee572f06282ab0..8f0330fdb0ef131a5d02d55507e68d1f27973b38 100644 |
| --- a/chrome/browser/ssl/ssl_error_handler.h |
| +++ b/chrome/browser/ssl/ssl_error_handler.h |
| @@ -11,6 +11,7 @@ |
| #include "base/macros.h" |
| #include "base/timer/timer.h" |
| #include "chrome/browser/chrome_notification_types.h" |
| +#include "chrome/browser/ssl/common_name_mismatch_handler.h" |
| #include "chrome/browser/ssl/ssl_cert_reporter.h" |
| #include "content/public/browser/notification_observer.h" |
| #include "content/public/browser/notification_registrar.h" |
| @@ -61,6 +62,11 @@ class SSLErrorHandler : public content::WebContentsUserData<SSLErrorHandler>, |
| static void SetInterstitialTimerStartedCallbackForTest( |
| TimerStartedCallback* callback); |
| + // Gets the result of whether the suggested URL is valid. Displays |
| + // common name mismatch interstitial or ssl interstitial accordingly. |
| + void CommonNameMismatchHandlerCallback( |
| + const CommonNameMismatchHandler::Results& results); |
| + |
| protected: |
| SSLErrorHandler(content::WebContents* web_contents, |
| int cert_error, |
| @@ -88,7 +94,11 @@ class SSLErrorHandler : public content::WebContentsUserData<SSLErrorHandler>, |
| // These are virtual for tests: |
| virtual void CheckForCaptivePortal(); |
| virtual void ShowCaptivePortalInterstitial(const GURL& landing_url); |
| - virtual void ShowSSLInterstitial(); |
| + virtual void ShowSSLInterstitial(const GURL& suggested_url); |
| + virtual bool GetSuggestedUrl(const GURL& request_url, |
| + const std::vector<std::string>& dns_names, |
| + GURL* suggested_url); |
|
meacer
2015/07/28 01:18:07
const method
Bhanu Dev
2015/07/30 02:39:10
Done.
|
| + virtual void CheckSuggestedUrl(const GURL& suggested_url); |
|
meacer
2015/07/28 01:18:07
const method?
Bhanu Dev
2015/07/30 02:39:10
This method cannot be made const as this changes t
|
| // content::NotificationObserver: |
| void Observe( |
| @@ -101,6 +111,9 @@ class SSLErrorHandler : public content::WebContentsUserData<SSLErrorHandler>, |
| const GURL& url, |
| content::NavigationController::ReloadType reload_type) override; |
| + // Timer duration for common name mismatch handler url check. |
|
palmer
2015/07/27 23:56:18
Nit: URL
Bhanu Dev
2015/07/30 02:39:10
Done.
|
| + const int common_name_handler_delay_in_seconds = 3; |
|
meacer
2015/07/28 01:18:07
Why is this different than the delay for captive p
Bhanu Dev
2015/07/30 02:39:10
Done.
|
| + |
| content::WebContents* web_contents_; |
| const int cert_error_; |
| const net::SSLInfo ssl_info_; |
| @@ -111,6 +124,8 @@ class SSLErrorHandler : public content::WebContentsUserData<SSLErrorHandler>, |
| content::NotificationRegistrar registrar_; |
| base::OneShotTimer<SSLErrorHandler> timer_; |
| + scoped_ptr<CommonNameMismatchHandler> common_name_mismatch_handler_; |
| + |
| scoped_ptr<SSLCertReporter> ssl_cert_reporter_; |
| DISALLOW_COPY_AND_ASSIGN(SSLErrorHandler); |