]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Abandon rendezvous circuits on SIGNAL NEWNYM
authorRobert Ransom <rransom.8774@gmail.com>
Fri, 10 Jun 2011 02:56:40 +0000 (19:56 -0700)
committerNick Mathewson <nickm@torproject.org>
Fri, 17 Jun 2011 19:22:23 +0000 (15:22 -0400)
changes/abandon-rend-circs-on-newnym [new file with mode: 0644]
src/or/circuituse.c

diff --git a/changes/abandon-rend-circs-on-newnym b/changes/abandon-rend-circs-on-newnym
new file mode 100644 (file)
index 0000000..67cb2dc
--- /dev/null
@@ -0,0 +1,8 @@
+  o Security fixes:
+    - Don't attach new streams to old rendezvous circuits after SIGNAL
+      NEWNYM.  Previously, we would keep using an existing rendezvous
+      circuit if it remained open (i.e. if it were kept open by a
+      long-lived stream or if a new stream were attached to it before
+      Tor could notice that it was old and no longer in use and close
+      it).  Bugfix on 0.1.1.15-rc; fixes bug 3375.
+
index 41c1899c3a22a9c2892cdb0ed778f8da2f12c2cd..48fc198c4bd97f658af7a62903f2cdcaa3a00821 100644 (file)
@@ -59,7 +59,8 @@ circuit_is_acceptable(circuit_t *circ, edge_connection_t *conn,
       return 0;
   }
 
-  if (purpose == CIRCUIT_PURPOSE_C_GENERAL)
+  if (purpose == CIRCUIT_PURPOSE_C_GENERAL ||
+      purpose == CIRCUIT_PURPOSE_C_REND_JOINED)
     if (circ->timestamp_dirty &&
        circ->timestamp_dirty+get_options()->MaxCircuitDirtiness <= now)
       return 0;