summaryrefslogtreecommitdiff
path: root/src/or/entrynodes.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2015-01-07 10:37:33 -0500
committerNick Mathewson <nickm@torproject.org>2015-01-07 10:37:33 -0500
commitda26bb646e4ae6c571dedc29e9b68837e9cb238f (patch)
treea5f41525c038d9f9c7795e30bf67ecc6b1c23f94 /src/or/entrynodes.c
parent79aaad952f4f43a7057c4162ae378d5bad28a77e (diff)
downloadtor-da26bb646e4ae6c571dedc29e9b68837e9cb238f.tar.gz
tor-da26bb646e4ae6c571dedc29e9b68837e9cb238f.zip
Turn entry_guards_changed constants into symbolic constants
Diffstat (limited to 'src/or/entrynodes.c')
-rw-r--r--src/or/entrynodes.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/or/entrynodes.c b/src/or/entrynodes.c
index 9eb0efd670..05ed56072d 100644
--- a/src/or/entrynodes.c
+++ b/src/or/entrynodes.c
@@ -1523,6 +1523,13 @@ entry_guards_parse_state(or_state_t *state, int set, char **msg)
return *msg ? -1 : 0;
}
+/** How long will we let a change in our guard nodes stay un-saved
+ * when we are trying to avoid disk writes? */
+#define SLOW_GUARD_STATE_FLUSH_TIME 3600
+/** How long will we let a change in our guard nodes stay un-saved
+ * when we are not trying to avoid disk writes? */
+#define FAST_GUARD_STATE_FLUSH_TIME 600
+
/** Our list of entry guards has changed, or some element of one
* of our entry guards has changed. Write the changes to disk within
* the next few minutes.
@@ -1533,8 +1540,12 @@ entry_guards_changed(void)
time_t when;
entry_guards_dirty = 1;
+ if (get_options()->AvoidDiskWrites)
+ when = time(NULL) + SLOW_GUARD_STATE_FLUSH_TIME;
+ else
+ when = time(NULL) + FAST_GUARD_STATE_FLUSH_TIME;
+
/* or_state_save() will call entry_guards_update_state(). */
- when = get_options()->AvoidDiskWrites ? time(NULL) + 3600 : time(NULL)+600;
or_state_mark_dirty(get_or_state(), when);
}