Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1820)

Unified Diff: content/browser/web_contents/web_contents_impl.cc

Issue 1905033002: PlzNavigate: Move navigation-level mixed content checks to the browser. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@console-security-message
Patch Set: Address jam@ comments; many minor code and comment updates. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/web_contents/web_contents_impl.cc
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 9bbc2e84720ce30fa6b8a34a3f7cf8adc22c6a92..4bd0e6eb63aafc5f0da5ae1c747fcc9ff99e708f 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3538,6 +3538,10 @@ void WebContentsImpl::OnDidLoadResourceFromMemoryCache(
void WebContentsImpl::OnDidDisplayInsecureContent(RenderFrameHostImpl* source) {
// Any frame can trigger display of insecure content, so we don't check
// |source| here.
+ DidDisplayInsecureContent();
+}
+
+void WebContentsImpl::DidDisplayInsecureContent() {
RecordAction(base::UserMetricsAction("SSL.DisplayedInsecureContent"));
controller_.ssl_manager()->DidDisplayMixedContent();
}
@@ -3548,6 +3552,11 @@ void WebContentsImpl::OnDidRunInsecureContent(RenderFrameHostImpl* source,
// TODO(nick, estark): Should we call FilterURL using |source|'s process on
// these parameters? |target_url| seems unused, except for a log message. And
// |security_origin| might be replaceable with the origin of the main frame.
+ DidRunInsecureContent(security_origin, target_url);
+}
+
+void WebContentsImpl::DidRunInsecureContent(const GURL& security_origin,
+ const GURL& target_url) {
LOG(WARNING) << security_origin << " ran insecure content from "
<< target_url.possibly_invalid_spec();
RecordAction(base::UserMetricsAction("SSL.RanInsecureContent"));
@@ -3557,6 +3566,19 @@ void WebContentsImpl::OnDidRunInsecureContent(RenderFrameHostImpl* source,
controller_.ssl_manager()->DidRunMixedContent(security_origin);
}
+void WebContentsImpl::PassiveInsecureContentFound(const GURL& resource_url) {
+ GetDelegate()->PassiveInsecureContentFound(resource_url);
+}
+
+bool WebContentsImpl::ShouldAllowRunningInsecureContent(
+ bool allowed_per_settings,
+ const url::Origin& origin,
+ const GURL& resource_url,
+ WebContents* web_contents) {
+ return GetDelegate()->ShouldAllowRunningInsecureContent(
+ allowed_per_settings, origin, resource_url, web_contents);
+}
+
void WebContentsImpl::OnDidDisplayContentWithCertificateErrors(
RenderFrameHostImpl* source,
const GURL& url) {

Powered by Google App Engine
This is Rietveld 408576698