[tor-bugs] #14847 [Tor]: Controller: add a command to fetch HS descriptor from HSdir(s)

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Mar 25 14:09:58 UTC 2015


#14847: Controller: add a command to fetch HS descriptor from HSdir(s)
-----------------------------+----------------------------------------
     Reporter:  dgoulet      |      Owner:  dgoulet
         Type:  enhancement  |     Status:  needs_review
     Priority:  normal       |  Milestone:  Tor: 0.2.7.x-final
    Component:  Tor          |    Version:
   Resolution:               |   Keywords:  SponsorR tor-hs controller
Actual Points:               |  Parent ID:  #3521
       Points:               |
-----------------------------+----------------------------------------
Changes (by dgoulet):

 * status:  needs_revision => needs_review


Comment:

 Replying to [comment:33 yawning]:
 > > > * Instead of removing out arg1, just so you can use
 SMARTLIST_FOREACH, for (int i = 1; i < smartlist_len(args); ++i) followed
 by smartlist_get(args, i) will suffice (and is consistent with the rest of
 the control code).
 > >
 > > Not sure I understand this one. I don't see this being used in
 control.c. Can you clarify the loop you have in mind for me to skip the
 first arg?
 >
 > `handle_control_closecircuit()` has an example of what I have in mind:

 Fixed!

 > > > src/or/rendclient.c:rend_client_refetch_v2_renddesc(): No longer
 need to log a warning when you fail to compute the v2 rend descriptor ID?
 > >
 > > I'm not seeing any log warnings in that function about that. Maybe you
 had an other function in mind?
 >
 > {{{
 > @@ -745,44 +895,12 @@ rend_client_refetch_v2_renddesc(const rend_data_t
 *rend_query)
 >
 > fe452c39248e99165b8756f38446eda8493f7300
 > [stuff snipped]
 >
 > -   if (rend_compute_v2_desc_id(descriptor_id,
 rend_query->onion_address,
 > -                               rend_query->auth_type ==
 REND_STEALTH_AUTH ?
 > -                               rend_query->descriptor_cookie : NULL,
 > -                               time(NULL), chosen_replica) < 0) {
 > -     log_warn(LD_REND, "Internal error: Computing v2 rendezvous "
 > -                       "descriptor ID did not succeed.");
 > -     /*
 > -      * Hmm, can this write anything to descriptor_id and still fail?
 > -      * Let's clear it just to be safe.
 > }}}
 >
 > That `log_warn` should be in `fetch_v2_desc_by_addr()` in the new code?
 >

 Ah now I remember why I removed it, `rend_compute_v2_desc_id()` has
 already a log for each error path thus this one is redundant.

 Hopefully everything is fixed!

 New branch for review: `bug14847_027_05`
 Spec: `ticket14847_11`

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


More information about the tor-bugs mailing list