diff options
author | wtc@chromium.org <wtc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-14 23:49:19 +0000 |
---|---|---|
committer | wtc@chromium.org <wtc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-14 23:49:19 +0000 |
commit | 0374b299997a8bd265a7f79cc06f79e7892a0ac7 (patch) | |
tree | e6df89d8a3dd741026b39442ffed95b30835b075 /chrome/browser/ssl/ssl_error_info.cc | |
parent | b31844be04ffac8e67d5f302c3bad5b28e1dec79 (diff) | |
download | chromium_src-0374b299997a8bd265a7f79cc06f79e7892a0ac7.zip chromium_src-0374b299997a8bd265a7f79cc06f79e7892a0ac7.tar.gz chromium_src-0374b299997a8bd265a7f79cc06f79e7892a0ac7.tar.bz2 |
Add new certificate error code
ERR_CERT_WEAK_SIGNATURE_ALGORITHM and certificate status
flag CERT_STATUS_WEAK_SIGNATURE_ALGORITHM. Note that I
didn't add new load flag
LOAD_IGNORE_CERT_WEAK_SIGNATURE_ALGORITHM.
Allow users to accept MD2 certificates as certificates
signed using a weak signature algorithm. MD4 certificates
are still treated as invalid certificates.
R=jar,jcampan
BUG=http://crbug.com/18725
TEST=none
Review URL: http://codereview.chromium.org/165504
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23497 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ssl/ssl_error_info.cc')
-rw-r--r-- | chrome/browser/ssl/ssl_error_info.cc | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/chrome/browser/ssl/ssl_error_info.cc b/chrome/browser/ssl/ssl_error_info.cc index d47529a..fd54bd4 100644 --- a/chrome/browser/ssl/ssl_error_info.cc +++ b/chrome/browser/ssl/ssl_error_info.cc @@ -153,6 +153,20 @@ SSLErrorInfo SSLErrorInfo::CreateError(ErrorType error_type, short_description = l10n_util::GetString(IDS_CERT_ERROR_INVALID_CERT_DESCRIPTION); break; + case CERT_WEAK_SIGNATURE_ALGORITHM: + title = + l10n_util::GetString(IDS_CERT_ERROR_WEAK_SIGNATURE_ALGORITHM_TITLE); + details = l10n_util::GetStringF( + IDS_CERT_ERROR_WEAK_SIGNATURE_ALGORITHM_DETAILS, + UTF8ToWide(request_url.host())); + short_description = l10n_util::GetString( + IDS_CERT_ERROR_WEAK_SIGNATURE_ALGORITHM_DESCRIPTION); + extra_info.push_back( + l10n_util::GetString(IDS_CERT_ERROR_EXTRA_INFO_1)); + extra_info.push_back( + l10n_util::GetString( + IDS_CERT_ERROR_WEAK_SIGNATURE_ALGORITHM_EXTRA_INFO_2)); + break; case MIXED_CONTENTS: title = l10n_util::GetString(IDS_SSL_MIXED_CONTENT_TITLE); details = l10n_util::GetString(IDS_SSL_MIXED_CONTENT_DETAILS); @@ -199,6 +213,8 @@ SSLErrorInfo::ErrorType SSLErrorInfo::NetErrorToErrorType(int net_error) { return CERT_REVOKED; case net::ERR_CERT_INVALID: return CERT_INVALID; + case net::ERR_CERT_WEAK_SIGNATURE_ALGORITHM: + return CERT_WEAK_SIGNATURE_ALGORITHM; default: NOTREACHED(); return UNKNOWN; @@ -217,7 +233,8 @@ int SSLErrorInfo::GetErrorsForCertStatus(int cert_id, net::CERT_STATUS_NO_REVOCATION_MECHANISM, net::CERT_STATUS_UNABLE_TO_CHECK_REVOCATION, net::CERT_STATUS_REVOKED, - net::CERT_STATUS_INVALID + net::CERT_STATUS_INVALID, + net::CERT_STATUS_WEAK_SIGNATURE_ALGORITHM }; const ErrorType kErrorTypes[] = { @@ -227,7 +244,8 @@ int SSLErrorInfo::GetErrorsForCertStatus(int cert_id, CERT_NO_REVOCATION_MECHANISM, CERT_UNABLE_TO_CHECK_REVOCATION, CERT_REVOKED, - CERT_INVALID + CERT_INVALID, + CERT_WEAK_SIGNATURE_ALGORITHM }; DCHECK(arraysize(kErrorFlags) == arraysize(kErrorTypes)); |