[tor-commits] [tor/master] Fix compilation of 3335 and 3825 fixes

nickm at torproject.org nickm at torproject.org
Mon Oct 3 19:14:01 UTC 2011


commit 05f672c8c21ceb4c47731fb3d8f777bf95583b3b
Author: Nick Mathewson <nickm at torproject.org>
Date:   Mon Oct 3 15:13:38 2011 -0400

    Fix compilation of 3335 and 3825 fixes
    
    In master, they ran into problems with the edge_conn/entry_conn split.
---
 src/or/circuituse.c      |    5 +++--
 src/or/connection_edge.c |    8 +++++---
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/or/circuituse.c b/src/or/circuituse.c
index 26bc451..9b96218 100644
--- a/src/or/circuituse.c
+++ b/src/or/circuituse.c
@@ -1589,11 +1589,12 @@ link_apconn_to_circ(entry_connection_t *apconn, origin_circuit_t *circ,
   /* assert_connection_ok(conn, time(NULL)); */
   circ->p_streams = ENTRY_TO_EDGE_CONN(apconn);
 
-  if (connection_edge_is_rendezvous_stream(apconn)) {
+  if (connection_edge_is_rendezvous_stream(ENTRY_TO_EDGE_CONN(apconn))) {
     /* We are attaching a stream to a rendezvous circuit.  That means
      * that an attempt to connect to a hidden service just
      * succeeded.  Tell rendclient.c. */
-   rend_client_note_connection_attempt_ended(apconn->rend_data->onion_address);
+    rend_client_note_connection_attempt_ended(
+                    ENTRY_TO_EDGE_CONN(apconn)->rend_data->onion_address);
   }
 
   if (cpath) { /* we were given one; use it */
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 3393104..40426a9 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -68,6 +68,7 @@ _connection_mark_unattached_ap(entry_connection_t *conn, int endreason,
                                int line, const char *file)
 {
   connection_t *base_conn = ENTRY_TO_CONN(conn);
+  edge_connection_t *edge_conn = ENTRY_TO_EDGE_CONN(conn);
   tor_assert(base_conn->type == CONN_TYPE_AP);
   ENTRY_TO_EDGE_CONN(conn)->edge_has_sent_end = 1; /* no circ yet */
 
@@ -78,9 +79,10 @@ _connection_mark_unattached_ap(entry_connection_t *conn, int endreason,
    * XXX023 This condition doesn't limit to only streams failing
    * without ever being attached.  That sloppiness should be harmless,
    * but we should fix it someday anyway. */
-  if ((conn->on_circuit != NULL || conn->edge_has_sent_end) &&
-      connection_edge_is_rendezvous_stream(conn)) {
-    rend_client_note_connection_attempt_ended(conn->rend_data->onion_address);
+  if ((edge_conn->on_circuit != NULL || edge_conn->edge_has_sent_end) &&
+      connection_edge_is_rendezvous_stream(edge_conn)) {
+    rend_client_note_connection_attempt_ended(
+                                    edge_conn->rend_data->onion_address);
   }
 
   if (base_conn->marked_for_close) {



More information about the tor-commits mailing list