[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #14846 [Tor]: Controller: retrieve an HS descriptor of a service run by a user
#14846: Controller: retrieve an HS descriptor of a service run by a user
-------------------------+-------------------------------------------------
Reporter: dgoulet | Owner: donncha
Type: | Status: needs_revision
enhancement | Milestone: Tor: 0.2.7.x-final
Priority: trivial | Version: Tor: 0.2.7
Component: Tor | Keywords: SponsorR, tor-hs, controller,
Resolution: | 027-triaged-1-in, SponsorS, TorCoreTeam201508
Actual Points: | Parent ID: #3521
Points: small |
-------------------------+-------------------------------------------------
Comment (by donncha):
Replying to [comment:18 nickm]:>
Thank you for the feedback
> Overall notes:
> * It makes me a little bit nervous to have a single function to handle
server-side and client-side lookups.
Should I revert to having separate
`rend_cache_lookup_v2_desc_as_service()` and `rend_cache_lookup_entry()`
functions? Alternatively I could add an assert for the cache type and
require explicit specification of the cache rather than defaulting to the
client cache. This should reduce the risk of information leaks between the
client and service-side cache.
> * I think we should name the "service cache" to make it clear that
it's our own descriptors we're asking about.
I'll rename it to `rend_cache_local_service`.
> * rend_cache_store_v2_desc_as_service() appears to be mostly duplicate
code from rend_desc_cache_store_v2_desc_as_client(). Duplicate code
usually indicates an opportunity for a function.
I'm don't think sharing code between
`rend_cache_store_v2_desc_as_service()` and
`rend_desc_cache_store_v2_desc_as_client()` would result in cleaner code.
The client function needs to do validation based on the client's rend
query. It also parses the descriptor's introduction points unlike
`rend_cache_store_v2_desc_as_service()`.
> * I wonder if this will conflict with any of dgoulet's patches for
#16389.
I'll rebase on #16389 which is now merged in master.
> * Does anything ever expire entries from rend_cache_service, or do
they stick around forever? (Currently this is handled for the other cache
in rend_cache_clean.)
I'll add a rend_cache_type argument to `rend_cache_clean()` and then clean
`rend_cache_service` when the client cache is cleaned.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/14846#comment:20>
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