[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [tor-bugs] #24338 [Core Tor/Tor]: DirAuths that have IPv6 addresses don't include them in their vote on themself



#24338: DirAuths that have IPv6 addresses don't include them in their vote on
themself
-------------------------------------------------+-------------------------
 Reporter:  tom                                  |          Owner:  neel
     Type:  defect                               |         Status:
                                                 |  needs_revision
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.4.1.x-final
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  tor-dirauth, easy, intro,            |  Actual Points:
  034-triage-20180328, 034-removed-20180328      |
Parent ID:  #24403                               |         Points:  1
 Reviewer:  nickm                                |        Sponsor:
                                                 |  SponsorV-can
-------------------------------------------------+-------------------------
Changes (by nickm):

 * status:  needs_review => needs_revision


Comment:

 Hi!  I'd suggest that instead of overriding the last_reachable6 flag in
 node, we should override the place where we assign the ipv6_addr in the
 routerstatus:
 {{{
   if (options->AuthDirHasIPv6Connectivity == 1 &&
       !tor_addr_is_null(&ri->ipv6_addr) &&
       node->last_reachable6 >= now - REACHABLE_TIMEOUT) {
     /* We're configured as having IPv6 connectivity. There's an IPv6
        OR port and it's reachable so copy it to the routerstatus.  */
     tor_addr_copy(&rs->ipv6_addr, &ri->ipv6_addr);
     rs->ipv6_orport = ri->ipv6_orport;
 }}}

 (in set_routerstatus_from_routerinfo())

 Instead of checking whether last_reachable6 is recent, we could check
 whether it is recent OR the router is ourself.

 Note that I think this change will make the test expression above way too
 complicated, and we should extract it into its own function, maybe called
 something like should_publish_node_ipv6().

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/24338#comment:16>
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