diff options
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | src/or/connection.c | 2 | ||||
-rw-r--r-- | src/or/directory.c | 4 | ||||
-rw-r--r-- | src/or/or.h | 2 | ||||
-rw-r--r-- | src/or/rendclient.c | 4 |
5 files changed, 12 insertions, 11 deletions
@@ -25,11 +25,11 @@ Changes in version 0.2.1.6-alpha - 2008-09-xx - Catch and report a few more bootstrapping failure cases when Tor fails to establish a TCP connection. Cleanup on 0.2.1.x. - When fetching v0 and v2 rendezvous service descriptors in parallel, - do not fail the whole hidden service request only because the v0 - descriptor fetch request fails; the v2 request might still succeed. - The other way round, when the last v2 request fails and no v0 request - is going on, do fail the hidden service request. Fixes bug 814. - Bugfix on 0.2.0.10-alpha. + we were failing the whole hidden service request when the v0 + descriptor fetch fails, even if the v2 fetch is still pending and + might succeed. Similarly, if the last v2 fetch fails, we were + failing the whole hidden service request even if a v0 fetch is + still pending. Fixes bug 814. Bugfix on 0.2.0.10-alpha. o Minor features: - Allow ports 465 and 587 in the default exit policy again. We had @@ -50,6 +50,7 @@ Changes in version 0.2.1.6-alpha - 2008-09-xx - Refactor unit testing logic so that dmalloc can be used sensibly with unit tests to check for memory leaks. + Changes in version 0.2.0.31 - 2008-09-03 Tor 0.2.0.31 addresses two potential anonymity issues, starts to fix a big bug we're seeing where in rare cases traffic from one Tor stream diff --git a/src/or/connection.c b/src/or/connection.c index 6aa5f8588c..6a34694de3 100644 --- a/src/or/connection.c +++ b/src/or/connection.c @@ -528,7 +528,7 @@ connection_about_to_close_connection(connection_t *conn) * descriptors; if the response is empty or the descriptor is * unusable, close pending connections (unless a v2 request is * still in progress). */ - rend_client_desc_here(dir_conn->rend_query, 0); + rend_client_desc_trynow(dir_conn->rend_query, 0); } /* If we were trying to fetch a v2 rend desc and did not succeed, * retry as needed. (If a fetch is successful, the connection state diff --git a/src/or/directory.c b/src/or/directory.c index c75fe2da06..80e0ff78e5 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -1892,7 +1892,7 @@ connection_dir_client_reached_eof(dir_connection_t *conn) } else { /* success. notify pending connections about this. */ conn->_base.purpose = DIR_PURPOSE_HAS_FETCHED_RENDDESC; - rend_client_desc_here(conn->rend_query, -1); + rend_client_desc_trynow(conn->rend_query, -1); } break; case 404: @@ -1938,7 +1938,7 @@ connection_dir_client_reached_eof(dir_connection_t *conn) log_info(LD_REND, "Successfully fetched v2 rendezvous " "descriptor."); conn->_base.purpose = DIR_PURPOSE_HAS_FETCHED_RENDDESC; - rend_client_desc_here(conn->rend_query, -1); + rend_client_desc_trynow(conn->rend_query, -1); break; } break; diff --git a/src/or/or.h b/src/or/or.h index e2a0d871b9..c14b08f4d6 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -3842,7 +3842,7 @@ int rend_client_rendezvous_acked(origin_circuit_t *circ, const char *request, size_t request_len); int rend_client_receive_rendezvous(origin_circuit_t *circ, const char *request, size_t request_len); -void rend_client_desc_here(const char *query, int rend_version); +void rend_client_desc_trynow(const char *query, int rend_version); extend_info_t *rend_client_get_random_intro(const char *query); diff --git a/src/or/rendclient.c b/src/or/rendclient.c index 46a49bed9d..7623831d5e 100644 --- a/src/or/rendclient.c +++ b/src/or/rendclient.c @@ -463,7 +463,7 @@ rend_client_refetch_v2_renddesc(const char *query) "service directories to fetch descriptors, because " "we already tried them all unsuccessfully."); /* Close pending connections (unless a v0 request is still going on). */ - rend_client_desc_here(query, 2); + rend_client_desc_trynow(query, 2); return; } @@ -634,7 +634,7 @@ rend_client_receive_rendezvous(origin_circuit_t *circ, const char *request, * <b>rend_version</b>. */ void -rend_client_desc_here(const char *query, int rend_version) +rend_client_desc_trynow(const char *query, int rend_version) { edge_connection_t *conn; rend_cache_entry_t *entry; |