New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 751946 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Bug
Team-Security-UX

Blocking:
issue 448486
issue 752370


Show other hotlists

Hotlists containing this issue:
EnamelAndFriendsFixIt


Sign in to add a comment

Interstitial refactor: add mechanism for cancelling navigation with error page HTML

Project Member Reported by est...@chromium.org, Aug 3 2017

Issue description

Design doc pointer: https://docs.google.com/document/d/1rEBpw5V-Nn1UIi8CIFa5ZZvwlR08SkY3CogvWE2UMFs/edit#bookmark=id.qwflbnad6ftv

NavigationHandle currently allows NavigationThrottles to cancel deferred requests with NavigationThrottle::CancelDeferredNavigation. For certificate errors, we want to cancel them asynchronously after deciding what type of error page to show -- but CancelDeferredNavigation isn't quite sufficient, because we need to provide a net error code (the certificate error code, that is) and the HTML to commit in the error page.

Add a new NavigationThrottle::CancelDeferredNavigationWithCustomError() method that takes a net error code and a data: URI as arguments, and a matching method on NavigationHandleImpl. The NavigationHandleImpl implementation should pass these arguments to the completion_callback_. (This might require expanding the signature of completion_callback_, or perhaps changing it to take a struct, which can optionally include a net error code and data: URI, instead of just a ThrottleCheckResult.)

A new method NavigationRequest::OnCertificateErrorChecksComplete() method will be the completion callback in this case. For now, this method should be similar to, e.g., OnRedirectChecksComplete, in that it should call OnRequestFailed() when the request is cancelled, except that it should pass the provided net error code as the error code argument instead of ERR_ABORTED. Later, we'll expand the OnRequestFailed() code path to contain the error page HTML to commit.
 
Blocking: 752370

Comment 2 by est...@chromium.org, Aug 17 2017

Components: UI>Browser>Navigation
Owner: lgar...@chromium.org
Status: Assigned (was: Available)
Lucas, it looks like you started working on this? Note that this is a bit separate from  issue 751949  which is about sending the error page HTML to the renderer process from NavigationRequest. Either one should be okay to do first.
Cc: est...@chromium.org

Comment 5 by est...@chromium.org, Nov 10 2017

Labels: Hotlist-EnamelAndFriendsFixIt
Status: Fixed (was: Assigned)

Sign in to add a comment