Pārlūkot izejas kodu

r15283@tombo: nickm | 2008-04-22 13:43:45 -0400
Correctly notify one-hop connections when a circuit build has failed. possible fix for bug 669. found by lodger.


svn:r14415

Nick Mathewson 18 gadi atpakaļ
vecāks
revīzija
bc95a4dbcb
2 mainītis faili ar 5 papildinājumiem un 3 dzēšanām
  1. 2 0
      ChangeLog
  2. 3 3
      src/or/circuituse.c

+ 2 - 0
ChangeLog

@@ -35,6 +35,8 @@ Changes in version 0.2.1.1-alpha - 2008-??-??
       by adding "new stream" events for DNS requests, and removing
       by adding "new stream" events for DNS requests, and removing
       spurious "stream closed" events" for cached reverse resolves.
       spurious "stream closed" events" for cached reverse resolves.
       Patch from mwenge.  Fixes bug 646.
       Patch from mwenge.  Fixes bug 646.
+    - Correctly notify one-hop connections when a circuit build has
+      failed.  Possible fix for bug 669.  Found by lodger.
 
 
   o Minor features:
   o Minor features:
     - Allow separate log levels to be configured for different logging
     - Allow separate log levels to be configured for different logging

+ 3 - 3
src/or/circuituse.c

@@ -745,10 +745,10 @@ circuit_build_failed(origin_circuit_t *circ)
       n_conn->_base.or_is_obsolete = 1;
       n_conn->_base.or_is_obsolete = 1;
       entry_guard_register_connect_status(n_conn->identity_digest, 0,
       entry_guard_register_connect_status(n_conn->identity_digest, 0,
                                           time(NULL));
                                           time(NULL));
-      /* if there are any one-hop streams waiting on this circuit, fail
-       * them now so they can retry elsewhere. */
-      connection_ap_fail_onehop(n_conn->identity_digest);
     }
     }
+    /* if there are any one-hop streams waiting on this circuit, fail
+     * them now so they can retry elsewhere. */
+    connection_ap_fail_onehop(circ->_base.n_conn_id_digest);
   }
   }
 
 
   switch (circ->_base.purpose) {
   switch (circ->_base.purpose) {