Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(690)

Unified Diff: components/security_interstitials/core/bad_clock_ui.cc

Issue 1772143002: Use network time for bad clock interstitial. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: estark review 1 Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/security_interstitials/core/bad_clock_ui.cc
diff --git a/components/security_interstitials/core/bad_clock_ui.cc b/components/security_interstitials/core/bad_clock_ui.cc
index 7b39de7574d2a77bd92df3ed93bd7c7f978d3584..47fddc326d7b5f0cf7b5466caeb10b0d17095879 100644
--- a/components/security_interstitials/core/bad_clock_ui.cc
+++ b/components/security_interstitials/core/bad_clock_ui.cc
@@ -10,26 +10,31 @@
#include "grit/components_strings.h"
#include "ui/base/l10n/l10n_util.h"
+namespace network_time {
+class NetworkTimeTracker;
+}
+
namespace security_interstitials {
-BadClockUI::BadClockUI(const GURL& request_url,
- int cert_error,
- const net::SSLInfo& ssl_info,
- const base::Time& time_triggered,
- const std::string& languages,
- ControllerClient* controller)
+BadClockUI::BadClockUI(
+ const GURL& request_url, int cert_error, const net::SSLInfo& ssl_info,
estark 2016/03/10 20:10:08 This formatting looks a little strange to me. Do y
mab 2016/03/11 04:18:41 Neato. Done.
+ const base::Time& time_triggered,
+ const network_time::NetworkTimeTracker* network_time_tracker,
+ const std::string& languages, ControllerClient* controller)
: request_url_(request_url),
cert_error_(cert_error),
ssl_info_(ssl_info),
time_triggered_(time_triggered),
languages_(languages),
- controller_(controller) {
+ controller_(controller),
+ network_time_tracker_(network_time_tracker) {
controller_->metrics_helper()->RecordUserInteraction(
security_interstitials::MetricsHelper::TOTAL_VISITS);
// TODO(felt): Separate the clock statistics from the main ssl statistics.
- ssl_errors::RecordUMAStatistics(false, time_triggered_, request_url_,
- cert_error_, *ssl_info_.cert.get());
+ ssl_errors::RecordUMAStatistics(false, time_triggered_, network_time_tracker_,
+ request_url_, cert_error_,
+ *ssl_info_.cert.get());
}
BadClockUI::~BadClockUI() {
@@ -54,9 +59,19 @@ void BadClockUI::PopulateClockStrings(base::DictionaryValue* load_time_data) {
load_time_data->SetBoolean("overridable", false);
load_time_data->SetBoolean("hide_primary_button",
!controller_->CanLaunchDateAndTimeSettings());
- int heading_string = ssl_errors::IsUserClockInTheFuture(time_triggered_)
- ? IDS_CLOCK_ERROR_AHEAD_HEADING
- : IDS_CLOCK_ERROR_BEHIND_HEADING;
+ int heading_string;
+ switch (ssl_errors::GetClockState(time_triggered_, network_time_tracker_)) {
+ case ssl_errors::NETWORK_FUTURE:
+ case ssl_errors::BUILD_FUTURE:
+ heading_string = IDS_CLOCK_ERROR_AHEAD_HEADING;
+ break;
+ case ssl_errors::NETWORK_OK:
+ case ssl_errors::NETWORK_PAST:
+ case ssl_errors::BUILD_PAST:
+ case ssl_errors::UNKNOWN:
+ heading_string = IDS_CLOCK_ERROR_BEHIND_HEADING;
estark 2016/03/10 20:10:08 Eh? NETWORK_OK and UNKNOWN => CLOCK_ERROR_BEHIND?
mab 2016/03/11 04:18:41 It seems ever so slightly unsafe, but, done.
+ break;
+ }
load_time_data->SetString("tabTitle",
l10n_util::GetStringUTF16(IDS_CLOCK_ERROR_TITLE));
load_time_data->SetString("heading",

Powered by Google App Engine
This is Rietveld 408576698