diff options
author | Nick Mathewson <nickm@torproject.org> | 2007-10-16 14:25:14 +0000 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2007-10-16 14:25:14 +0000 |
commit | 03ce9d3ee721ca60f052abe1602b7c134e42d303 (patch) | |
tree | 4aa9c8eabc584697a2ad7262970b429e38dd4e00 | |
parent | 9ca262583312bcb63ea269cca54e0dfd5e1f56d5 (diff) | |
download | tor-03ce9d3ee721ca60f052abe1602b7c134e42d303.tar tor-03ce9d3ee721ca60f052abe1602b7c134e42d303.tar.gz |
r15848@catbus: nickm | 2007-10-16 10:17:02 -0400
Only drop routers for not appearing in the consensus if their purpose is GENERAL.
svn:r11984
-rw-r--r-- | src/or/routerlist.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/or/routerlist.c b/src/or/routerlist.c index 48536fd9c..d5d939378 100644 --- a/src/or/routerlist.c +++ b/src/or/routerlist.c @@ -2667,11 +2667,10 @@ router_add_to_routerlist(routerinfo_t *router, const char **msg, } } - /*XXXX020 I had suspicions about whether this was correct, but now I - * can't remember why. :( -NM */ - if (consensus && !in_consensus && !authdir_mode(get_options())) { - /* If it's not listed in the consensus, then don't consider replacing - * the latest router with it. */ + if (router->purpose == ROUTER_PURPOSE_GENERAL && + consensus && !in_consensus && !authdir_mode(get_options())) { + /* If it's a general router not listed in the consensus, then don't + * consider replacing the latest router with it. */ if (!from_cache && should_cache_old_descriptors()) signed_desc_append_to_journal(&router->cache_info, router_get_store(routerlist, router)); |