[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #13699 [Tor]: Remove rend cache object if not usable anymore
#13699: Remove rend cache object if not usable anymore
-------------------------+-----------------
Reporter: dgoulet | Owner:
Type: defect | Status: new
Priority: normal | Milestone:
Component: Tor | Version:
Resolution: | Keywords:
Actual Points: | Parent ID:
Points: |
-------------------------+-----------------
Description changed by dgoulet:
Old description:
> This is a part of the larger bug #13644.
>
> A rend cache object is not really usable once the intro points list is
> empty. We should remove that object from the cache at that point and let
> the refetch v2 descriptor add back a new object.
>
> Right now, it's failing badly because the
> {{{rend_cache_store_v2_desc_as_client()}}} function is parsing everything
> from the reveiced descriptor but at the end validates that {{{desc}}} is
> the same and discard everything if true. That makes any cache object with
> no intro points left to stay in the cache until it expires.
>
> 1) The store function should *not* be called if an object already exists.
> Once we trigger a refetch of the descriptor, we have to make sure the
> rend cache object has been removed before thus having the store function
> always adding new object.
>
> I'll push a branch to fix that in a jiffy.
New description:
This is a part of the larger bug #13664.
A rend cache object is not really usable once the intro points list is
empty. We should remove that object from the cache at that point and let
the refetch v2 descriptor add back a new object.
Right now, it's failing badly because the
{{{rend_cache_store_v2_desc_as_client()}}} function is parsing everything
from the reveiced descriptor but at the end validates that {{{desc}}} is
the same and discard everything if true. That makes any cache object with
no intro points left to stay in the cache until it expires.
1) The store function should *not* be called if an object already exists.
Once we trigger a refetch of the descriptor, we have to make sure the rend
cache object has been removed before thus having the store function always
adding new object.
I'll push a branch to fix that in a jiffy.
--
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/13699#comment:1>
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