[tor-bugs] #13506 [Tor]: Explain/document what various hidden service close reasons mean

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Oct 21 11:49:21 UTC 2014


#13506: Explain/document what various hidden service close reasons mean
------------------------+--------------------------------
     Reporter:  arma    |      Owner:
         Type:  task    |     Status:  new
     Priority:  normal  |  Milestone:  Tor: 0.2.6.x-final
    Component:  Tor     |    Version:
   Resolution:          |   Keywords:  SponsorR, tor-hs
Actual Points:          |  Parent ID:
       Points:          |
------------------------+--------------------------------
Description changed by arma:

Old description:

> Phil and Rob fetched a bunch of hidden services, and watched the
> controller events while doing so. They saw a bunch of REMOTE_REASONS that
> were not self-evident in what they mean happened, or what it means their
> fetcher should do:
>
> {{{
> RESOLVEFAILED - Crawler should not return to this onion for
>                 this round, or forever?
> EXITPOLICY    - Crawler should try again, but should target a
>                 different Hidden Service port, as the HS in
>                 not using port 80 as its virtual port.
> INTERNAL      - should the crawler try again...try diff RP?
> DESTROY       - should the crawler try again...try diff RP?
> MISC          - should the crawler try again...try diff RP?
> CONNRESET     - should the crawler try again...try diff RP?
> NOROUTE       - should the crawler try again...try diff RP?
> CANT_ATTACH   - should the crawler try again...try diff RP?
> CONNECTREFUSED - should the crawler try again...try diff RP?
> TIMEOUT       - should the crawler try again...try diff RP?
> }}}
>
> For example, RESOLVEFAILED is what Tor says when it tried to fetch the
> hidden service descriptor from the hsdirs but none of them had it. This
> is not obvious.
>
> Whereas CONNECTREFUSED means, I think, that every step of the rendezvous
> worked great, but that the hidden service wasn't listening on virtual
> port 80.
>
> What do the other cases mean? And what do they imply about whether a
> retry is likely to work?

New description:

 Phil and Rob fetched a bunch of hidden services, and watched the
 controller events while doing so. They saw a bunch of REMOTE_REASONS that
 were not self-evident in what they mean happened, or what it means their
 fetcher should do:

 {{{
 RESOLVEFAILED - Crawler should not return to this onion for
                 this round, or forever?
 EXITPOLICY    - Crawler should try again, but should target a
                 different Hidden Service port, as the HS in
                 not using port 80 as its virtual port.
 INTERNAL      - should the crawler try again...try diff RP?
 DESTROY       - should the crawler try again...try diff RP?
 MISC          - should the crawler try again...try diff RP?
 CONNRESET     - should the crawler try again...try diff RP?
 NOROUTE       - should the crawler try again...try diff RP?
 CANT_ATTACH   - should the crawler try again...try diff RP?
 CONNECTREFUSED - should the crawler try again...try diff RP?
 TIMEOUT       - should the crawler try again...try diff RP?
 }}}

 For example, RESOLVEFAILED is what Tor says when it tried to fetch the
 hidden service descriptor from the hsdirs but none of them had it. This is
 not obvious.

 Whereas CONNECTREFUSED means, I think, that every step of the rendezvous
 worked great, and that the hidden service was indeed configured to use
 virtual port 80, but there was nothing listening on the other end of that
 virtual port.

 What do the other cases mean? And what do they imply about whether a retry
 is likely to work?

--

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/13506#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list