aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2013-02-11 21:57:32 -0500
committerRoger Dingledine <arma@torproject.org>2013-02-11 21:57:32 -0500
commit5911fc0c17176bbff379921b7905ec990f505f85 (patch)
treee69184282a7214c5612799bb3075c62f6f317a02
parent17089302fdb454e03f173cc0c70c5a69c5c1cd7b (diff)
downloadtor-5911fc0c17176bbff379921b7905ec990f505f85.tar
tor-5911fc0c17176bbff379921b7905ec990f505f85.tar.gz
Check for IP address change every minute, not 15 minutes
Relays used to check every 10 to 60 seconds, as an accidental side effect of calling directory_fetches_from_authorities() when considering doing a directory fetch. The fix for bug 1992 removes that side effect. At the same time, bridge relays never had the side effect, leading to confused bridge operators who tried crazy tricks to get their bridges to notice IP address changes (see ticket 1913). The new behavior is to reinstate an every-60-seconds check for both public relays and bridge relays, now that the side effect is gone.
-rw-r--r--changes/bug19925
-rw-r--r--src/or/main.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/changes/bug1992 b/changes/bug1992
index 6fa4eaea0..6a751dc7e 100644
--- a/changes/bug1992
+++ b/changes/bug1992
@@ -4,3 +4,8 @@
answer in some cases. Fixes bugs 1992 (bugfix on 0.2.0.20-rc)
and 2410 (bugfix on 0.1.2.2-alpha).
+ o Minor features:
+ - Make bridge relays check once a minute for whether their IP
+ address has changed, rather than only every 15 minutes. Resolves
+ bugs 1913 and 1992.
+
diff --git a/src/or/main.c b/src/or/main.c
index aa601e5a4..98d3359cf 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -1407,7 +1407,7 @@ run_scheduled_events(time_t now)
* that would require an upload? */
#define CHECK_DESCRIPTOR_INTERVAL (60)
/** How often do we (as a router) check whether our IP address has changed? */
-#define CHECK_IPADDRESS_INTERVAL (15*60)
+#define CHECK_IPADDRESS_INTERVAL (60)
/* 2b. Once per minute, regenerate and upload the descriptor if the old
* one is inaccurate. */