mirror repository of the tor core protocol in case of issues
Go to file
David Goulet f4f809fe3d hs-v3: Close all SOCKS request on descriptor failure
Client side, when a descriptor is finally fetched and stored in the cache, we
then go over all pending SOCKS request for that descriptor. If it turns out
that the intro points are unusable, we close the first SOCKS request but not
the others for the same .onion.

This commit makes it that we'll close all SOCKS requests so we don't let
hanging the other ones.

It also fixes another bug which is having a SOCKS connection in RENDDESC_WAIT
state but with a descriptor in the cache. At some point, tor will expire the
intro failure cache which will make that descriptor usable again. When
retrying all SOCKS connection (retry_all_socks_conn_waiting_for_desc()), we
won't end up in the code path where we have already the descriptor for a
pending request causing a BUG().

Bottom line is that we should never have pending requests (waiting for a
descriptor) with that descriptor in the cache (even if unusable).

Fixees #27410.

Signed-off-by: David Goulet <dgoulet@torproject.org>
2018-09-19 11:11:57 -04:00
changes hs-v3: Close all SOCKS request on descriptor failure 2018-09-19 11:11:57 -04:00
contrib Bump to 0.3.5.1-alpha-dev 2018-09-18 07:52:27 -04:00
doc hs-v3: Add changes file and man page for client authorization 2018-09-13 11:47:58 -04:00
m4 Replace obsolete macros with modern equivalents 2016-12-23 10:34:11 -05:00
scripts Set the file encoding in checkIncludes.py with Python3 2018-08-28 16:25:54 -04:00
src hs-v3: Close all SOCKS request on descriptor failure 2018-09-19 11:11:57 -04:00
.appveyor.yml Merge remote-tracking branch 'teor/bug27464-034' into maint-0.3.4 2018-09-12 08:17:42 -04:00
.editorconfig Add .editorconfig to follow coding standards style 2018-06-17 19:24:40 -04:00
.gitignore Update .gitignore 2018-07-08 15:13:33 +02:00
.gitlab-ci.yml Fix spelling mistakes corresponding to ticket #23650 2018-02-07 10:41:57 -05:00
.gitmodules Update the .gitmodules to refer to project-level tor-rust-dependencies 2018-02-21 11:53:04 -05:00
.travis.yml Merge remote-tracking branch 'teor/ticket27252-034' into maint-0.3.4 2018-09-11 13:09:18 -04:00
acinclude.m4 Update copyrights to 2018. 2018-06-20 08:13:28 -04:00
autogen.sh Report errors when updating configuration files 2016-12-23 10:35:26 -05:00
ChangeLog Merge remote-tracking branch 'teor/ticket27757' 2018-09-17 21:43:34 -04:00
CODE_OF_CONDUCT Add CODE_OF_CONDUCT file 2018-07-05 11:22:33 +03:00
config.rust.in Make the rust tests link. 2018-07-31 19:46:00 -04:00
configure.ac Bump to 0.3.5.1-alpha-dev 2018-09-18 07:52:27 -04:00
CONTRIBUTING Add CODE_OF_CONDUCT file 2018-07-05 11:22:33 +03:00
Doxyfile.in Fix everything that previously referred to src/or 2018-07-05 17:15:50 -04:00
INSTALL Remove old instructions from INSTALL 2018-07-03 16:34:52 +03:00
LICENSE Add the compatibility definition for getdelim.c from netbsd. 2018-07-10 10:14:24 -04:00
link_rust.sh.in Allow spaces in CCLD in linker.sh 2018-06-20 19:17:29 -04:00
Makefile.am Merge branch 'nss_squashed' into nss_merge 2018-09-04 20:21:07 -04:00
Makefile.nmake Clean up the MVSC nmake files so they work again. 2014-09-09 10:27:05 -04:00
README doc: Put the release timeline link in README 2017-11-08 10:44:00 -05:00
ReleaseNotes Copy changelogs and releasenotes to master 2018-09-10 10:03:01 -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

To build Tor from a just-cloned git repository:
        sh autogen.sh && ./configure && make && make install

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

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

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

Making applications work with Tor:
        https://wiki.torproject.org/projects/tor/wiki/doc/TorifyHOWTO

Frequently Asked Questions:
        https://www.torproject.org/docs/faq.html


To get started working on Tor development:
        See the doc/HACKING directory.

Release timeline:
         https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/CoreTorReleases