Sfoglia il codice sorgente

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 16 anni fa
parent
commit
bc95a4dbcb
2 ha cambiato i file con 5 aggiunte e 3 eliminazioni
  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
       spurious "stream closed" events" for cached reverse resolves.
       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:
     - 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;
       entry_guard_register_connect_status(n_conn->identity_digest, 0,
                                           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) {