diff options
author | davidben <davidben@chromium.org> | 2014-11-07 15:18:05 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-11-07 23:18:30 +0000 |
commit | 3a92a96b72e14295a4ca6f75a3a3fe29f338dcab (patch) | |
tree | 66ef7ddee9a0af55d01c149fc99a752942cac009 /components/error_page | |
parent | b576de2077bf3ca9f76a525f88c934550c5ed350 (diff) | |
download | chromium_src-3a92a96b72e14295a4ca6f75a3a3fe29f338dcab.zip chromium_src-3a92a96b72e14295a4ca6f75a3a3fe29f338dcab.tar.gz chromium_src-3a92a96b72e14295a4ca6f75a3a3fe29f338dcab.tar.bz2 |
Don't trigger auto-reload on client auth failures.
Otherwise the user gets repeatedly prompted.
BUG=431387
Review URL: https://codereview.chromium.org/707193005
Cr-Commit-Position: refs/heads/master@{#303319}
Diffstat (limited to 'components/error_page')
-rw-r--r-- | components/error_page/renderer/net_error_helper_core.cc | 7 | ||||
-rw-r--r-- | components/error_page/renderer/net_error_helper_core_unittest.cc | 6 |
2 files changed, 13 insertions, 0 deletions
diff --git a/components/error_page/renderer/net_error_helper_core.cc b/components/error_page/renderer/net_error_helper_core.cc index 74cc14d..9c02e78 100644 --- a/components/error_page/renderer/net_error_helper_core.cc +++ b/components/error_page/renderer/net_error_helper_core.cc @@ -433,6 +433,13 @@ bool NetErrorHelperCore::IsReloadableError( // For now, net::ERR_UNKNOWN_URL_SCHEME is only being displayed on // Chrome for Android. info.error.reason != net::ERR_UNKNOWN_URL_SCHEME && + // Do not trigger if the server rejects a client certificate. + // https://crbug.com/431387 + !net::IsClientCertificateError(info.error.reason) && + // Some servers reject client certificates with a generic + // handshake_failure alert. + // https://crbug.com/431387 + info.error.reason != net::ERR_SSL_PROTOCOL_ERROR && !info.was_failed_post; } diff --git a/components/error_page/renderer/net_error_helper_core_unittest.cc b/components/error_page/renderer/net_error_helper_core_unittest.cc index 0aed025..5015f83 100644 --- a/components/error_page/renderer/net_error_helper_core_unittest.cc +++ b/components/error_page/renderer/net_error_helper_core_unittest.cc @@ -2182,6 +2182,12 @@ TEST_F(NetErrorHelperCoreAutoReloadTest, DoesNotReload) { DoErrorLoad(net::ERR_UNKNOWN_URL_SCHEME); EXPECT_FALSE(timer()->IsRunning()); + + DoErrorLoad(net::ERR_SSL_PROTOCOL_ERROR); + EXPECT_FALSE(timer()->IsRunning()); + + DoErrorLoad(net::ERR_BAD_SSL_CLIENT_AUTH_CERT); + EXPECT_FALSE(timer()->IsRunning()); } TEST_F(NetErrorHelperCoreAutoReloadTest, ShouldSuppressErrorPage) { |