log_fn(LOG_DEBUG,"in-progress connect failed. Removing.");
connection_close_immediate(conn);
connection_mark_for_close(conn);
- /* Previously we tested conn->nickname; is this right? */
+ /* it's safe to pass OPs to router_mark_as_down(), since it just
+ * ignores unrecognized routers
+ */
if (conn->type == CONN_TYPE_OR)
router_mark_as_down(conn->identity_digest);
return -1;
switch(connection_connect(conn, conn->address, addr, port)) {
case -1:
+ router_mark_as_down(conn->identity_digest);
connection_free(conn);
return NULL;
case 0:
tor_free(rl);
}
-/** Mark the router named <b>nickname</b> as non-running in our routerlist. */
+/** Mark the router with ID <b>digest</b> as non-running in our routerlist. */
void router_mark_as_down(const char *digest) {
routerinfo_t *router;
tor_assert(digest);