|
|
@@ -1940,8 +1940,7 @@ rend_services_introduce(void)
|
|
|
|
|
|
/* Find out which introduction points we have in progress for this
|
|
|
service. */
|
|
|
- for (j=0; j < smartlist_len(service->intro_nodes); ++j) {
|
|
|
- intro = smartlist_get(service->intro_nodes, j);
|
|
|
+ SMARTLIST_FOREACH_BEGIN(service->intro_nodes, rend_intro_point_t *, intro){
|
|
|
router = router_get_by_digest(intro->extend_info->identity_digest);
|
|
|
if (!router || !find_intro_circuit(intro, service->pk_digest)) {
|
|
|
log_info(LD_REND,"Giving up on %s as intro point for %s.",
|
|
|
@@ -1954,12 +1953,12 @@ rend_services_introduce(void)
|
|
|
service->desc_is_dirty = now;
|
|
|
}
|
|
|
rend_intro_point_free(intro);
|
|
|
- smartlist_del(service->intro_nodes,j--);
|
|
|
+ SMARTLIST_DEL_CURRENT(service->intro_nodes, intro);
|
|
|
intro_point_set_changed = 1;
|
|
|
}
|
|
|
if (router)
|
|
|
smartlist_add(intro_routers, router);
|
|
|
- }
|
|
|
+ } SMARTLIST_FOREACH_END(intro);
|
|
|
|
|
|
if (!intro_point_set_changed &&
|
|
|
(smartlist_len(service->intro_nodes) >=
|