From c5bef32d951906201e4c97073af222b8cb10c49e Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Fri, 9 Apr 2004 19:30:38 +0000 Subject: [PATCH] call directory_has_arrived has arrived every time we get a new directory, not just the first time svn:r1581 --- src/or/directory.c | 9 +-------- src/or/main.c | 10 +++++++++- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/or/directory.c b/src/or/directory.c index 8bf945ab1e..e1e3c5a240 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -11,7 +11,6 @@ static int directory_handle_command(connection_t *conn); /********* START VARIABLES **********/ extern or_options_t options; /* command-line and config-file options */ -extern int has_fetched_directory; char rend_publish_string[] = "/rendezvous/publish"; char rend_fetch_url[] = "/rendezvous/"; @@ -243,13 +242,7 @@ int connection_dir_process_inbuf(connection_t *conn) { } else { log_fn(LOG_INFO,"updated routers."); } - if(options.ORPort) { /* connect to them all */ - router_retry_connections(); - } - if (has_fetched_directory==0) { - has_fetched_directory=1; - directory_has_arrived(); /* do things we've been waiting to do */ - } + directory_has_arrived(); /* do things we've been waiting to do */ } if(conn->purpose == DIR_PURPOSE_UPLOAD_DIR) { diff --git a/src/or/main.c b/src/or/main.c index 32486bc95f..8eee05674e 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -282,14 +282,22 @@ static void conn_close_if_marked(int i) { } } +/* This function is called whenever we successfully pull + * down a directory */ void directory_has_arrived(void) { - log_fn(LOG_INFO, "We now have a directory."); + log_fn(LOG_INFO, "A directory has arrived."); /* just for testing */ // directory_initiate_command(router_pick_directory_server(), // DIR_PURPOSE_FETCH_RENDDESC, "foo", 3); + has_fetched_directory=1; + + if(options.ORPort) { /* connect to them all */ + router_retry_connections(); + } + rend_services_init(); /* get bob to initialize all his hidden services */ }