aboutsummaryrefslogtreecommitdiff
path: root/src/or/routerlist.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/or/routerlist.c')
-rw-r--r--src/or/routerlist.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/or/routerlist.c b/src/or/routerlist.c
index adc894369..b74573607 100644
--- a/src/or/routerlist.c
+++ b/src/or/routerlist.c
@@ -84,6 +84,7 @@ router_pick_directory_server_impl(int requireauth, int requireothers)
int i;
routerinfo_t *router;
smartlist_t *sl;
+ char buf[16];
if(!routerlist)
return NULL;
@@ -98,9 +99,11 @@ router_pick_directory_server_impl(int requireauth, int requireothers)
continue;
if(requireothers && router_is_me(router))
continue;
- if(options.FascistFirewall &&
- router->dir_port != REQUIRED_FIREWALL_DIRPORT)
- continue;
+ if(options.FascistFirewall) {
+ sprintf(buf,"%d",router->dir_port);
+ if (!smartlist_string_isin(options.FirewallPorts, buf))
+ continue;
+ }
smartlist_add(sl, router);
}