[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] if options.FascistFirewall but none are running on port 80,...
- To: or-cvs@freehaven.net
- Subject: [or-cvs] if options.FascistFirewall but none are running on port 80,...
- From: arma@seul.org (Roger Dingledine)
- Date: Wed, 18 Aug 2004 17:14:00 -0400 (EDT)
- Delivered-to: archiver@seul.org
- Delivered-to: or-cvs-outgoing@seul.org
- Delivered-to: or-cvs@seul.org
- Delivery-date: Wed, 18 Aug 2004 17:14:14 -0400
- Reply-to: or-dev@freehaven.net
- Sender: owner-or-cvs@freehaven.net
Update of /home/or/cvsroot/src/or
In directory moria.mit.edu:/home2/arma/work/onion/cvs/src/or
Modified Files:
routerlist.c
Log Message:
if options.FascistFirewall but none are running on port 80, try
the others before giving up.
Index: routerlist.c
===================================================================
RCS file: /home/or/cvsroot/src/or/routerlist.c,v
retrieving revision 1.131
retrieving revision 1.132
diff -u -d -r1.131 -r1.132
--- routerlist.c 18 Aug 2004 11:20:15 -0000 1.131
+++ routerlist.c 18 Aug 2004 21:13:58 -0000 1.132
@@ -20,7 +20,7 @@
/* static function prototypes */
static routerinfo_t *
-router_pick_directory_server_impl(int requireauth, int preferothers);
+router_pick_directory_server_impl(int requireauth, int requireothers, int fascistfirewall);
static void mark_all_authdirservers_up(void);
static int router_resolve_routerlist(routerlist_t *dir);
@@ -47,15 +47,15 @@
routerinfo_t *router_pick_directory_server(int requireauth, int requireothers) {
routerinfo_t *choice;
- choice = router_pick_directory_server_impl(requireauth, requireothers);
+ choice = router_pick_directory_server_impl(requireauth, requireothers, options.FascistFirewall);
if(choice)
return choice;
log_fn(LOG_INFO,"No dirservers are reachable. Trying them all again.");
- /* mark all authdirservers are up again */
+ /* mark all authdirservers as up again */
mark_all_authdirservers_up();
/* try again */
- choice = router_pick_directory_server_impl(requireauth, requireothers);
+ choice = router_pick_directory_server_impl(requireauth, requireothers, 0);
if(choice)
return choice;
@@ -71,7 +71,7 @@
return NULL;
}
/* give it one last try */
- choice = router_pick_directory_server_impl(requireauth, requireothers);
+ choice = router_pick_directory_server_impl(requireauth, requireothers, 0);
return choice;
}
@@ -79,7 +79,7 @@
* it has to be a trusted server. If requireothers, it cannot be us.
*/
static routerinfo_t *
-router_pick_directory_server_impl(int requireauth, int requireothers)
+router_pick_directory_server_impl(int requireauth, int requireothers, int fascistfirewall)
{
int i;
routerinfo_t *router;
@@ -99,7 +99,7 @@
continue;
if(requireothers && router_is_me(router))
continue;
- if(options.FascistFirewall) {
+ if(fascistfirewall) {
sprintf(buf,"%d",router->dir_port);
if (!smartlist_string_isin(options.FirewallPorts, buf))
continue;