aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/bug1899_test_changed_addr4
-rw-r--r--src/or/dirserv.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/changes/bug1899_test_changed_addr b/changes/bug1899_test_changed_addr
new file mode 100644
index 000000000..2823d3c6e
--- /dev/null
+++ b/changes/bug1899_test_changed_addr
@@ -0,0 +1,4 @@
+ o Minor features
+ - When a router changes IP or port, authorities now launch a new
+ reachability test for it. (Implements ticket 1899)
+
diff --git a/src/or/dirserv.c b/src/or/dirserv.c
index 523a92178..b5c33739b 100644
--- a/src/or/dirserv.c
+++ b/src/or/dirserv.c
@@ -3136,6 +3136,10 @@ dirserv_should_launch_reachability_test(routerinfo_t *ri, routerinfo_t *ri_old)
/* It just came out of hibernation; launch a reachability test */
return 1;
}
+ if (ri_old->addr != ri->addr || ri_old->or_port != ri->or_port) {
+ /* Address or port changed; launch a reachability test */
+ return 1;
+ }
return 0;
}