[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[or-cvs] router_choose_random_node wants a smartlist of routers, not...
- To: or-cvs@freehaven.net
- Subject: [or-cvs] router_choose_random_node wants a smartlist of routers, not...
- From: nickm@seul.org (Nick Mathewson)
- Date: Tue, 6 Apr 2004 17:20:01 -0400 (EDT)
- Delivered-to: archiver@seul.org
- Delivered-to: or-cvs-outgoing@seul.org
- Delivered-to: or-cvs@seul.org
- Delivery-date: Tue, 06 Apr 2004 17:20:22 -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:/tmp/cvs-serv32760/or
Modified Files:
rendservice.c
Log Message:
router_choose_random_node wants a smartlist of routers, not of nicknames.
Index: rendservice.c
===================================================================
RCS file: /home/or/cvsroot/src/or/rendservice.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- rendservice.c 6 Apr 2004 20:23:58 -0000 1.32
+++ rendservice.c 6 Apr 2004 21:19:59 -0000 1.33
@@ -651,10 +651,13 @@
rend_service_t *service;
char *desc, *intro;
int changed, prev_intro_nodes, desc_len;
+ smartlist_t *intro_routers;
router_get_routerlist(&rl);
+ intro_routers = smartlist_create();
for (i=0; i< smartlist_len(rend_service_list); ++i) {
+ smartlist_clear(intro_routers);
service = smartlist_get(rend_service_list, i);
assert(service);
@@ -667,6 +670,7 @@
smartlist_del(service->intro_nodes,j--);
changed = 1;
}
+ smartlist_add(intro_routers, router);
}
/* We have enough intro points, and the intro points we thought we had were
@@ -683,13 +687,14 @@
router = router_choose_random_node(rl,
service->intro_prefer_nodes,
service->intro_exclude_nodes,
- service->intro_nodes);
+ intro_routers);
if (!router) {
log_fn(LOG_WARN, "Can't establish more than %d introduction points",
smartlist_len(service->intro_nodes));
break;
}
changed = 1;
+ smartlist_add(intro_routers, router);
smartlist_add(service->intro_nodes, tor_strdup(router->nickname));
}
@@ -719,6 +724,8 @@
}
}
}
+ smartlist_free(intro_routers);
+
return 0;
}