aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTaylor Yu <catalyst@torproject.org>2017-09-20 16:54:56 -0500
committerTaylor Yu <catalyst@torproject.org>2017-09-20 18:50:39 -0500
commit1c017edac369a40c9a1633b0560e5f0d85b4e39e (patch)
tree770c534da00000ae1998593b9ad6410c70f50d9d
parentac8e26a41592e5a87a5613cfbeb4c5d975835e4d (diff)
downloadtor-1c017edac369a40c9a1633b0560e5f0d85b4e39e.tar.gz
tor-1c017edac369a40c9a1633b0560e5f0d85b4e39e.zip
Use correct sign for state file clock skew
or_state_load() was using an incorrect sign convention when calling clock_skew_warning() to warn about state file clock skew. This caused the wording of the warning to be incorrect about the direction of the skew.
-rw-r--r--changes/bug236064
-rw-r--r--src/or/statefile.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/changes/bug23606 b/changes/bug23606
new file mode 100644
index 0000000000..77f4d0cb9e
--- /dev/null
+++ b/changes/bug23606
@@ -0,0 +1,4 @@
+ o Minor bugfixes (bootstrapping):
+ - When warning about state file clock skew, report the correct
+ direction for the detected skew. Fixes bug 23606; bugfix on
+ 0.2.8.1-alpha.
diff --git a/src/or/statefile.c b/src/or/statefile.c
index 9647aa8834..86f26419be 100644
--- a/src/or/statefile.c
+++ b/src/or/statefile.c
@@ -404,8 +404,8 @@ or_state_load(void)
log_info(LD_GENERAL, "Loaded state from \"%s\"", fname);
/* Warn the user if their clock has been set backwards,
* they could be tricked into using old consensuses */
- time_t apparent_skew = new_state->LastWritten - time(NULL);
- if (apparent_skew > 0)
+ time_t apparent_skew = time(NULL) - new_state->LastWritten;
+ if (apparent_skew < 0)
clock_skew_warning(NULL, (long)apparent_skew, 1, LD_GENERAL,
"local state file", fname);
} else {