]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
if a stream times out after 15s without a connected cell,
authorRoger Dingledine <arma@torproject.org>
Sat, 6 Mar 2004 05:10:07 +0000 (05:10 +0000)
committerRoger Dingledine <arma@torproject.org>
Sat, 6 Mar 2004 05:10:07 +0000 (05:10 +0000)
don't try that circuit again.

svn:r1239

src/or/connection_edge.c

index 848003012e6a1012317453fc019a0be6d546742e..351133c44462ae59968b5bd3d0bf5739cd331d9f 100644 (file)
@@ -568,7 +568,12 @@ void connection_ap_expire_beginning(void) {
        */
       conn->state = AP_CONN_STATE_CIRCUIT_WAIT;
       circuit_detach_stream(circ, conn);
-      /* give it another 15 seconds to try */
+      /* kludge to make us not try this circuit again, yet to allow
+       * current streams on it to survive if they can: make it
+       * unattractive to use for new streams */
+      assert(circ->timestamp_dirty);
+      circ->timestamp_dirty -= options.NewCircuitPeriod;
+      /* give our stream another 15 seconds to try */
       conn->timestamp_lastread += 15;
       if(connection_ap_handshake_attach_circuit(conn)<0) {
         /* it will never work */