// Copyright 2017 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_SECURITY_INTERSTITIALS_CONTENT_SSL_ERROR_NAVIGATION_THROTTLE_H_ #define COMPONENTS_SECURITY_INTERSTITIALS_CONTENT_SSL_ERROR_NAVIGATION_THROTTLE_H_ #include <memory> #include "base/memory/weak_ptr.h" #include "content/public/browser/certificate_request_result_type.h" #include "content/public/browser/navigation_throttle.h" #include "net/ssl/ssl_info.h" class GURL; namespace content { class NavigationHandle; class WebContents; } // namespace content namespace security_interstitials { class SecurityInterstitialPage; } // namespace security_interstitials // SSLErrorNavigationThrottle watches for failed navigations that should be // displayed as SSL interstitial pages. More specifically, // SSLErrorNavigationThrottle::WillFailRequest() will defer any navigations that // failed due to a certificate error. After calculating which interstitial to // show, it will cancel the navigation with the interstitial's custom error page // HTML. class SSLErrorNavigationThrottle : public content::NavigationThrottle { … }; #endif // COMPONENTS_SECURITY_INTERSTITIALS_CONTENT_SSL_ERROR_NAVIGATION_THROTTLE_H_