| Index: chrome/browser/ui/browser.cc
|
| diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
|
| index 55977078765483dd87126a25ccd3adea3216aec1..ace1d801536b18fedf3f03eaa6138050ddd0d1af 100644
|
| --- a/chrome/browser/ui/browser.cc
|
| +++ b/chrome/browser/ui/browser.cc
|
| @@ -77,7 +77,6 @@
|
| #include "chrome/browser/sessions/session_tab_helper.h"
|
| #include "chrome/browser/sessions/tab_restore_service.h"
|
| #include "chrome/browser/sessions/tab_restore_service_factory.h"
|
| -#include "chrome/browser/ssl/security_state_model.h"
|
| #include "chrome/browser/sync/profile_sync_service.h"
|
| #include "chrome/browser/sync/profile_sync_service_factory.h"
|
| #include "chrome/browser/sync/sync_ui_util.h"
|
| @@ -255,28 +254,6 @@
|
| switches::kEnableFastUnload);
|
| }
|
|
|
| -// Note: This is a lossy operation. Not all of the policies that can be
|
| -// expressed by a SecurityLevel (a //chrome concept) can be expressed by
|
| -// a content::SecurityStyle.
|
| -content::SecurityStyle SecurityLevelToSecurityStyle(
|
| - SecurityStateModel::SecurityLevel security_level) {
|
| - switch (security_level) {
|
| - case SecurityStateModel::NONE:
|
| - return content::SECURITY_STYLE_UNAUTHENTICATED;
|
| - case SecurityStateModel::SECURITY_WARNING:
|
| - case SecurityStateModel::SECURITY_POLICY_WARNING:
|
| - return content::SECURITY_STYLE_WARNING;
|
| - case SecurityStateModel::EV_SECURE:
|
| - case SecurityStateModel::SECURE:
|
| - return content::SECURITY_STYLE_AUTHENTICATED;
|
| - case SecurityStateModel::SECURITY_ERROR:
|
| - return content::SECURITY_STYLE_AUTHENTICATION_BROKEN;
|
| - }
|
| -
|
| - NOTREACHED();
|
| - return content::SECURITY_STYLE_UNKNOWN;
|
| -}
|
| -
|
| } // namespace
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
| @@ -1319,18 +1296,14 @@
|
| content::SecurityStyle Browser::GetSecurityStyle(
|
| WebContents* web_contents,
|
| content::SecurityStyleExplanations* security_style_explanations) {
|
| - SecurityStateModel* model = SecurityStateModel::FromWebContents(web_contents);
|
| - DCHECK(model);
|
| - const SecurityStateModel::SecurityInfo& security_info =
|
| - model->security_info();
|
| -
|
| - const content::SecurityStyle security_style =
|
| - SecurityLevelToSecurityStyle(security_info.security_level);
|
| + connection_security::SecurityInfo security_info;
|
| + connection_security::GetSecurityInfoForWebContents(web_contents,
|
| + &security_info);
|
|
|
| security_style_explanations->ran_insecure_content_style =
|
| - SecurityStateModel::kRanInsecureContentStyle;
|
| + connection_security::kRanInsecureContentStyle;
|
| security_style_explanations->displayed_insecure_content_style =
|
| - SecurityStateModel::kDisplayedInsecureContentStyle;
|
| + connection_security::kDisplayedInsecureContentStyle;
|
|
|
| // Check if the page is HTTP; if so, no explanations are needed. Note
|
| // that SECURITY_STYLE_UNAUTHENTICATED does not necessarily mean that
|
| @@ -1341,19 +1314,20 @@
|
| // algorithms with the same UI treatment as HTTP pages).
|
| security_style_explanations->scheme_is_cryptographic =
|
| security_info.scheme_is_cryptographic;
|
| - if (!security_info.scheme_is_cryptographic) {
|
| - return security_style;
|
| + if (!security_info.scheme_is_cryptographic ||
|
| + security_info.security_style == content::SECURITY_STYLE_UNKNOWN) {
|
| + return security_info.security_style;
|
| }
|
|
|
| if (security_info.sha1_deprecation_status ==
|
| - SecurityStateModel::DEPRECATED_SHA1_BROKEN) {
|
| + connection_security::DEPRECATED_SHA1_BROKEN) {
|
| security_style_explanations->broken_explanations.push_back(
|
| content::SecurityStyleExplanation(
|
| l10n_util::GetStringUTF8(IDS_BROKEN_SHA1),
|
| l10n_util::GetStringUTF8(IDS_BROKEN_SHA1_DESCRIPTION),
|
| security_info.cert_id));
|
| } else if (security_info.sha1_deprecation_status ==
|
| - SecurityStateModel::DEPRECATED_SHA1_WARNING) {
|
| + connection_security::DEPRECATED_SHA1_WARNING) {
|
| security_style_explanations->warning_explanations.push_back(
|
| content::SecurityStyleExplanation(
|
| l10n_util::GetStringUTF8(IDS_WARNING_SHA1),
|
| @@ -1363,14 +1337,14 @@
|
|
|
| security_style_explanations->ran_insecure_content =
|
| security_info.mixed_content_status ==
|
| - SecurityStateModel::RAN_MIXED_CONTENT ||
|
| + connection_security::RAN_MIXED_CONTENT ||
|
| security_info.mixed_content_status ==
|
| - SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT;
|
| + connection_security::RAN_AND_DISPLAYED_MIXED_CONTENT;
|
| security_style_explanations->displayed_insecure_content =
|
| security_info.mixed_content_status ==
|
| - SecurityStateModel::DISPLAYED_MIXED_CONTENT ||
|
| + connection_security::DISPLAYED_MIXED_CONTENT ||
|
| security_info.mixed_content_status ==
|
| - SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT;
|
| + connection_security::RAN_AND_DISPLAYED_MIXED_CONTENT;
|
|
|
| if (net::IsCertStatusError(security_info.cert_status)) {
|
| base::string16 error_string = base::UTF8ToUTF16(net::ErrorToString(
|
| @@ -1391,7 +1365,7 @@
|
| // deprecated SHA1, then add an explanation that the certificate is
|
| // valid.
|
| if (security_info.sha1_deprecation_status ==
|
| - SecurityStateModel::NO_DEPRECATED_SHA1) {
|
| + connection_security::NO_DEPRECATED_SHA1) {
|
| security_style_explanations->secure_explanations.push_back(
|
| content::SecurityStyleExplanation(
|
| l10n_util::GetStringUTF8(IDS_VALID_SERVER_CERTIFICATE),
|
| @@ -1401,7 +1375,7 @@
|
| }
|
| }
|
|
|
| - return security_style;
|
| + return security_info.security_style;
|
| }
|
|
|
| void Browser::ShowCertificateViewerInDevTools(
|
| @@ -1510,17 +1484,10 @@
|
| hosted_app_controller_->UpdateLocationBarVisibility(true);
|
| }
|
|
|
| -void Browser::VisibleSSLStateChanged(WebContents* source) {
|
| +void Browser::VisibleSSLStateChanged(const WebContents* source) {
|
| // When the current tab's SSL state changes, we need to update the URL
|
| // bar to reflect the new state.
|
| DCHECK(source);
|
| -
|
| - // Notify the model that the security state has changed, so that the
|
| - // URL bar updates with up-to-date data computed by the model.
|
| - SecurityStateModel* model = SecurityStateModel::FromWebContents(source);
|
| - DCHECK(model);
|
| - model->SecurityStateChanged();
|
| -
|
| if (tab_strip_model_->GetActiveWebContents() == source)
|
| UpdateToolbar(false);
|
| }
|
|
|