OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/page_info/page_info.h" | 5 #include "chrome/browser/ui/page_info/page_info.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 break; | 157 break; |
158 case security_state::CONTENT_STATUS_UNKNOWN: | 158 case security_state::CONTENT_STATUS_UNKNOWN: |
159 case security_state::CONTENT_STATUS_NONE: | 159 case security_state::CONTENT_STATUS_NONE: |
160 break; | 160 break; |
161 } | 161 } |
162 } | 162 } |
163 | 163 |
164 // If the |security_info| indicates that mixed content or certificate errors | 164 // If the |security_info| indicates that mixed content or certificate errors |
165 // were present, update |connection_status| and |connection_details|. | 165 // were present, update |connection_status| and |connection_details|. |
166 void ReportAnyInsecureContent(const security_state::SecurityInfo& security_info, | 166 void ReportAnyInsecureContent(const security_state::SecurityInfo& security_info, |
167 PageInfo::SiteConnectionStatus& connection_status, | 167 PageInfo::SiteConnectionStatus* connection_status, |
168 base::string16& connection_details) { | 168 base::string16* connection_details) { |
169 bool displayed_insecure_content = false; | 169 bool displayed_insecure_content = false; |
170 bool ran_insecure_content = false; | 170 bool ran_insecure_content = false; |
171 CheckContentStatus(security_info.mixed_content_status, | 171 CheckContentStatus(security_info.mixed_content_status, |
172 &displayed_insecure_content, &ran_insecure_content); | 172 &displayed_insecure_content, &ran_insecure_content); |
173 // Only note subresources with certificate errors if the main resource was | 173 // Only note subresources with certificate errors if the main resource was |
174 // loaded without major certificate errors. If the main resource had a | 174 // loaded without major certificate errors. If the main resource had a |
175 // certificate error, then it would not be that useful (and could | 175 // certificate error, then it would not be that useful (and could |
176 // potentially be confusing) to warn about subresources that had certificate | 176 // potentially be confusing) to warn about subresources that had certificate |
177 // errors too. | 177 // errors too. |
178 if (!net::IsCertStatusError(security_info.cert_status) || | 178 if (!net::IsCertStatusError(security_info.cert_status) || |
179 net::IsCertStatusMinorError(security_info.cert_status)) { | 179 net::IsCertStatusMinorError(security_info.cert_status)) { |
180 CheckContentStatus(security_info.content_with_cert_errors_status, | 180 CheckContentStatus(security_info.content_with_cert_errors_status, |
181 &displayed_insecure_content, &ran_insecure_content); | 181 &displayed_insecure_content, &ran_insecure_content); |
182 } | 182 } |
183 | 183 |
184 // Only one insecure content warning is displayed; show the most severe. | 184 // Only one insecure content warning is displayed; show the most severe. |
185 if (ran_insecure_content) { | 185 if (ran_insecure_content) { |
186 connection_status = | 186 *connection_status = |
187 PageInfo::SITE_CONNECTION_STATUS_INSECURE_ACTIVE_SUBRESOURCE; | 187 PageInfo::SITE_CONNECTION_STATUS_INSECURE_ACTIVE_SUBRESOURCE; |
188 connection_details.assign(l10n_util::GetStringFUTF16( | 188 connection_details->assign(l10n_util::GetStringFUTF16( |
189 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_SENTENCE_LINK, connection_details, | 189 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_SENTENCE_LINK, *connection_details, |
190 l10n_util::GetStringUTF16( | 190 l10n_util::GetStringUTF16( |
191 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_INSECURE_CONTENT_ERROR))); | 191 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_INSECURE_CONTENT_ERROR))); |
192 return; | 192 return; |
193 } | 193 } |
194 if (security_info.contained_mixed_form) { | 194 if (security_info.contained_mixed_form) { |
195 connection_status = PageInfo::SITE_CONNECTION_STATUS_INSECURE_FORM_ACTION; | 195 *connection_status = PageInfo::SITE_CONNECTION_STATUS_INSECURE_FORM_ACTION; |
196 connection_details.assign(l10n_util::GetStringFUTF16( | 196 connection_details->assign(l10n_util::GetStringFUTF16( |
197 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_SENTENCE_LINK, connection_details, | 197 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_SENTENCE_LINK, *connection_details, |
198 l10n_util::GetStringUTF16( | 198 l10n_util::GetStringUTF16( |
199 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_INSECURE_FORM_WARNING))); | 199 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_INSECURE_FORM_WARNING))); |
200 return; | 200 return; |
201 } | 201 } |
202 if (displayed_insecure_content) { | 202 if (displayed_insecure_content) { |
203 connection_status = | 203 *connection_status = |
204 PageInfo::SITE_CONNECTION_STATUS_INSECURE_PASSIVE_SUBRESOURCE; | 204 PageInfo::SITE_CONNECTION_STATUS_INSECURE_PASSIVE_SUBRESOURCE; |
205 connection_details.assign(l10n_util::GetStringFUTF16( | 205 connection_details->assign(l10n_util::GetStringFUTF16( |
206 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_SENTENCE_LINK, connection_details, | 206 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_SENTENCE_LINK, *connection_details, |
207 l10n_util::GetStringUTF16( | 207 l10n_util::GetStringUTF16( |
208 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_INSECURE_CONTENT_WARNING))); | 208 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_INSECURE_CONTENT_WARNING))); |
209 } | 209 } |
210 } | 210 } |
211 | 211 |
212 void GetSiteIdentityByMaliciousContentStatus( | 212 void GetSiteIdentityByMaliciousContentStatus( |
213 security_state::MaliciousContentStatus malicious_content_status, | 213 security_state::MaliciousContentStatus malicious_content_status, |
214 PageInfo::SiteIdentityStatus* status, | 214 PageInfo::SiteIdentityStatus* status, |
215 base::string16* details) { | 215 base::string16* details) { |
216 switch (malicious_content_status) { | 216 switch (malicious_content_status) { |
(...skipping 413 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
630 | 630 |
631 if (security_info.obsolete_ssl_status == net::OBSOLETE_SSL_NONE) { | 631 if (security_info.obsolete_ssl_status == net::OBSOLETE_SSL_NONE) { |
632 site_connection_details_.assign(l10n_util::GetStringFUTF16( | 632 site_connection_details_.assign(l10n_util::GetStringFUTF16( |
633 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_CONNECTION_TEXT, subject_name)); | 633 IDS_PAGE_INFO_SECURITY_TAB_ENCRYPTED_CONNECTION_TEXT, subject_name)); |
634 } else { | 634 } else { |
635 site_connection_details_.assign(l10n_util::GetStringFUTF16( | 635 site_connection_details_.assign(l10n_util::GetStringFUTF16( |
636 IDS_PAGE_INFO_SECURITY_TAB_WEAK_ENCRYPTION_CONNECTION_TEXT, | 636 IDS_PAGE_INFO_SECURITY_TAB_WEAK_ENCRYPTION_CONNECTION_TEXT, |
637 subject_name)); | 637 subject_name)); |
638 } | 638 } |
639 | 639 |
640 ReportAnyInsecureContent(security_info, site_connection_status_, | 640 ReportAnyInsecureContent(security_info, &site_connection_status_, |
641 site_connection_details_); | 641 &site_connection_details_); |
642 } | 642 } |
643 | 643 |
644 uint16_t cipher_suite = | 644 uint16_t cipher_suite = |
645 net::SSLConnectionStatusToCipherSuite(security_info.connection_status); | 645 net::SSLConnectionStatusToCipherSuite(security_info.connection_status); |
646 if (security_info.security_bits > 0 && cipher_suite) { | 646 if (security_info.security_bits > 0 && cipher_suite) { |
647 int ssl_version = | 647 int ssl_version = |
648 net::SSLConnectionStatusToVersion(security_info.connection_status); | 648 net::SSLConnectionStatusToVersion(security_info.connection_status); |
649 const char* ssl_version_str; | 649 const char* ssl_version_str; |
650 net::SSLVersionToString(&ssl_version_str, ssl_version); | 650 net::SSLVersionToString(&ssl_version_str, ssl_version); |
651 site_connection_details_ += ASCIIToUTF16("\n\n"); | 651 site_connection_details_ += ASCIIToUTF16("\n\n"); |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
800 info.site_identity = UTF16ToUTF8(GetSimpleSiteName(site_url_)); | 800 info.site_identity = UTF16ToUTF8(GetSimpleSiteName(site_url_)); |
801 | 801 |
802 info.connection_status = site_connection_status_; | 802 info.connection_status = site_connection_status_; |
803 info.connection_status_description = UTF16ToUTF8(site_connection_details_); | 803 info.connection_status_description = UTF16ToUTF8(site_connection_details_); |
804 info.identity_status = site_identity_status_; | 804 info.identity_status = site_identity_status_; |
805 info.identity_status_description = UTF16ToUTF8(site_identity_details_); | 805 info.identity_status_description = UTF16ToUTF8(site_identity_details_); |
806 info.certificate = certificate_; | 806 info.certificate = certificate_; |
807 info.show_ssl_decision_revoke_button = show_ssl_decision_revoke_button_; | 807 info.show_ssl_decision_revoke_button = show_ssl_decision_revoke_button_; |
808 ui_->SetIdentityInfo(info); | 808 ui_->SetIdentityInfo(info); |
809 } | 809 } |
OLD | NEW |