Design doc pointer: https://docs.google.com/document/d/1rEBpw5V-Nn1UIi8CIFa5ZZvwlR08SkY3CogvWE2UMFs/edit#
We want certificate errors to commit as navigations like net errors. For net errors, an error code is passed down to the renderer starting in NavigationRequest::OnRequestFailed, and the renderer generates the HTML to commit as the error page UI. In the certificate error case, however, we need to generate the HTML in the browser process.
In issue 751946 , we're adding a mechanism to get the error page HTML into NavigationRequest::OnRequestFailed(). Now we need to get it into the renderer and committed.
Add an error page data: URI argument to RenderFrameHostImpl::FailedNavigation, FrameMsg_FailedNavigation, RenderFrameImpl::OnFailedNavigation, and RenderFrameImpl::LoadNavigationErrorPage. (Or, maybe instead of adding a new argument, change the last argument from an error code into an ErrorParams struct that contains the error code and, optionally, error page HTML in the form of a data: URI.)
In RenderFrameImpl::LoadNavigationErrorPage, if error page HTML is provided as an argument, then use that, overriding the |error_html| retrieved from GetContentClient().
Comment 1 by est...@chromium.org
, Aug 3 2017Cc: lgar...@chromium.org