aboutsummaryrefslogtreecommitdiff
path: root/src/or/routerlist.c
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2007-12-24 10:31:39 +0000
committerRoger Dingledine <arma@torproject.org>2007-12-24 10:31:39 +0000
commit4fb573fddd65ef193be56118624f8001d03147ee (patch)
treef5b7d596fbfd0276459cfee1dda209cb691a3e09 /src/or/routerlist.c
parentda06bfb80fdb0f356cd5cf5746c06492afec0f78 (diff)
downloadtor-4fb573fddd65ef193be56118624f8001d03147ee.tar.gz
tor-4fb573fddd65ef193be56118624f8001d03147ee.zip
bugfix on r10612:
When we load a bridge descriptor from the cache, and it was previously unreachable, mark it as retriable so we won't just ignore it. Also, try fetching a new copy immediately. svn:r12950
Diffstat (limited to 'src/or/routerlist.c')
-rw-r--r--src/or/routerlist.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index 6edf123bd4..32b0dbaf45 100644
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@ -3053,13 +3053,13 @@ routerlist_remove_old_routers(void)
/** We just added a new set of descriptors. Take whatever extra steps
* we need. */
static void
-routerlist_descriptors_added(smartlist_t *sl)
+routerlist_descriptors_added(smartlist_t *sl, int from_cache)
{
tor_assert(sl);
control_event_descriptors_changed(sl);
SMARTLIST_FOREACH(sl, routerinfo_t *, ri,
if (ri->purpose == ROUTER_PURPOSE_BRIDGE)
- learned_bridge_descriptor(ri);
+ learned_bridge_descriptor(ri, from_cache);
);
}
@@ -3118,7 +3118,7 @@ router_load_single_router(const char *s, uint8_t purpose, int cache,
smartlist_free(lst);
return 0;
} else {
- routerlist_descriptors_added(lst);
+ routerlist_descriptors_added(lst, 0);
smartlist_free(lst);
log_debug(LD_DIR, "Added router to list");
return 1;
@@ -3182,7 +3182,7 @@ router_load_routers_from_string(const char *s, const char *eos,
if (router_add_to_routerlist(ri, &msg, from_cache, !from_cache) >= 0) {
smartlist_add(changed, ri);
- routerlist_descriptors_added(changed);
+ routerlist_descriptors_added(changed, from_cache);
smartlist_clear(changed);
}
});