mirror repository of the tor core protocol in case of issues
Go to file
Nick Mathewson e8b9815711 Take a smarter approach to clearing isolation info
Back when I added this logic in 20c0581a79, the rule was that whenever
a circuit finished building, we cleared its isolation info. I did that
so that we would still use the circuit even if all the streams that
had previously led us to tentatively set its isolation info had closed.

But there were problems with that approach: We could pretty easily get
into a case where S1 had led us to launch C1 and S2 had led us to
launch C2, but when C1 finished, we cleared its isolation and attached
S2 first.  Since C2 was still marked in a way that made S1
unattachable to it, we'd then launch another circuit needlessly.

So instead, we try the following approach now: when a circuit is done
building, we try to attach streams to it.  If it remains unused after
we try attaching streams, then we clear its isolation info, and try
again to attach streams.

Thanks to Sebastian for helping me figure this out.
2011-07-19 13:51:43 -04:00
changes Implement stream isolation 2011-07-19 01:58:45 -04:00
contrib Bump version to 0.2.3.2-alpha-dev 2011-07-18 17:56:47 -04:00
doc Use socks username/password information in stream isolation 2011-07-19 02:44:12 -04:00
src Take a smarter approach to clearing isolation info 2011-07-19 13:51:43 -04:00
.gitignore Merge remote branch 'origin/maint-0.2.2' 2010-11-11 13:59:18 -05:00
acinclude.m4 Fix warnings with new versions of autoconf 2010-10-11 12:36:02 +02:00
autogen.sh Use autoreconf, not autoconf&&automake&&etc in autogen.sh 2010-09-27 11:20:12 -04:00
ChangeLog finish the changelog 2011-07-18 13:39:01 -04:00
configure.in Bump version to 0.2.3.2-alpha-dev 2011-07-18 17:56:47 -04:00
Doxyfile.in Fix up all doxygen warnings other than "foo is not documented" 2011-03-16 14:47:27 -04:00
INSTALL Small fixes for the 2702 implementation 2011-04-02 12:15:08 +02:00
LICENSE Bump copyright statements to 2011 2011-01-03 11:50:39 -05:00
Makefile.am Merge remote branch 'origin/maint-0.2.2' 2011-01-03 17:25:30 -05:00
README we have two faqs for now 2010-02-22 00:41:48 -05:00
ReleaseNotes put the 0.2.1.30 changes into releasenotes 2011-03-11 17:38:55 -05:00
tor.spec.in Update rpm spec file so that it will build without manual intervention on all rpm-based distributions 2010-09-30 21:48:29 -04:00

Tor protects your privacy on the internet by hiding the connection
between your Internet address and the services you use. We believe Tor
is reasonably secure, but please ensure you read the instructions and
configure it properly.

To build Tor from source:
        ./configure && make && make install

Home page:
        https://www.torproject.org/

Download new versions:
        https://www.torproject.org/download.html

Documentation, including links to installation and setup instructions:
        https://www.torproject.org/documentation.html

Making applications work with Tor:
        https://wiki.torproject.org/noreply/TheOnionRouter/TorifyHOWTO

Frequently Asked Questions:
        https://www.torproject.org/faq.html
        https://wiki.torproject.org/noreply/TheOnionRouter/TorFAQ