[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #2401 [Tor Hidden Services]: rend_cache_store(): We already have a v2 descriptor for service xxxxx
#2401: rend_cache_store(): We already have a v2 descriptor for service xxxxx
------------------------------------+---------------------------------------
Reporter: prof7bit | Owner: rransom
Type: defect | Status: closed
Priority: major | Milestone: Tor: 0.2.2.x-final
Component: Tor Hidden Services | Version: Tor: unspecified
Resolution: not a bug | Keywords:
Parent: | Points:
Actualpoints: |
------------------------------------+---------------------------------------
Changes (by rransom):
* status: assigned => closed
* resolution: => not a bug
Comment:
Replying to [comment:7 arma]:
> I wonder if this bug still applies to 0.2.2, given that we dropped the
v0 hidden service descriptors.
The log message prof7bit is complaining about can't occur in 0.2.2.x (even
though the code to emit it was left in), because the 0.2.2.x branch
doesn't fetch v0 HS descriptors. It is also not a bug.
The âWe already have a v2 descriptorâ message can only occur when Tor has
just fetched a ''v0'' descriptor; it will happily replace a v2 descriptor
with another v2 descriptor, or replace a v0 descriptor with another v0
descriptor. The client code shouldn't replace a v2 descriptor with a v0
descriptor or vice versa, for at least two reasons:
* If the client replaces a v2 descriptor with a v0 descriptor, and later
retrieves another copy of the same v2 descriptor it had before, it won't
notice that that's the same descriptor, it'll try all of the introduction
points in that descriptor again and fail, and ''then'' it'll go looking
for another descriptor.
* If the client replaces a v0 descriptor with a v2 descriptor at the
wrong time, it will trigger #1930 and fail to connect to the HS outright.
The only actual bug shown in prof7bit's reports here is the following:
{{{
Jan 22 15:02:38.010 [info] rend_cache_store_v2_desc_as_client(): We
already have this service descriptor gtvsxxxxxxxxxxxx.
}}}
This is also not a bug in the client code or hidden service server code.
It is a bug in the directory authorities' assignment of the HSDir flag:
the set of relays with the HSDir flag needs to remain fairly stable in
order for the HS directory system to work, but instead the set of HSDir
relays changes significantly in nearly every new consensus. In this case,
the client fetched a descriptor from an HSDir relay which had an old
descriptor because it was using a different consensus from the one that
the hidden service server had. #2649 is one of the tickets opened for
this issue.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/2401#comment:8>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs