[tor-bugs] #23577 [Core Tor/Tor]: Make setup_introduce1_data() take a node instead of an extend_info

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Nov 8 12:55:32 UTC 2017


#23577: Make setup_introduce1_data() take a node instead of an extend_info
-------------------------------------------------+-------------------------
 Reporter:  teor                                 |          Owner:  (none)
     Type:  defect                               |         Status:
                                                 |  needs_revision
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.3.3.x-final
Component:  Core Tor/Tor                         |        Version:  Tor:
                                                 |  0.3.2.1-alpha
 Severity:  Normal                               |     Resolution:
 Keywords:  prop224, tor-hs, single-onion, ipv6  |  Actual Points:  1
Parent ID:  #23493                               |         Points:  1
 Reviewer:                                       |        Sponsor:
                                                 |  SponsorV-can
-------------------------------------------------+-------------------------
Changes (by teor):

 * status:  needs_review => needs_revision
 * version:   => Tor: 0.3.2.1-alpha


Comment:

 Hi, this patch looks good, but we will need to rewrite some of the
 comments to say what the code does after the patch.
 Then we can do some tests, and merge it.

 Minor comment changes

 We don't mention local variables in function comments. And we need to
 explain what the function does after the patch:
 {{{
 Legacy ID is mandatory and will always be present in node.
 If the primary address is not IPv4, logs a BUG() warning, and returns an
 empty smartlist.
 Includes ed25519 id and IPv6 if present.
 }}}

 This is what the function does after the patch:
 {{{
  /* We require IPv4, and we will add IPv6 if it is present */
 }}}

 {{{
 /* ed25519 ID is only included if the node has it. */
 }}}

 {{{
 /* If we didn't get any link specifiers, it's because our node was bad. */
 }}}

 Possible code changes

 We might also think about using the ed25519 accessor function, rather than
 accessing the node member directly. (I'm not sure if this makes any
 difference, someone should check.)

 Changes file

 This patch needs a changes file that says what the patch does. changes
 files go in tor/changes. They have a specific format:
 https://gitweb.torproject.org/tor.git/tree/doc/HACKING/CodingStandards.md


 Here is some text to get started:
 {{{
 When v3 onion service clients send introduce cells, include the IPv6
 address of the rendezvous point, if it has one.
 v3 onion services running 0.3.2 ignore IPv6 addresses.
 In future Tor versions, IPv6-only v3 single onion services can use IPv6
 addresses to connect directly to the rendezvous point.
 }}}

 It's ok for us to merge this patch to master by itself, because 0.3.2
 services ignore rendezvous point IPv6 addresses, and v3 single onion
 services can't be configured as IPv6 only in 0.3.2.

 Here are the tests we need to do on this patch before we merge:
 * run "make check"
 * run "make test-network-all" (needs chutney)

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


More information about the tor-bugs mailing list