[tor-bugs] #27325 [Core Tor/Tor]: Rework NETINFO cell parsing and generation with trunnel

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Nov 1 11:02:23 UTC 2018


#27325: Rework NETINFO cell parsing and generation with trunnel
-------------------------------------------------+-------------------------
 Reporter:  rl1987                               |          Owner:  rl1987
     Type:  enhancement                          |         Status:
                                                 |  needs_information
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.3.6.x-final
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  trunnel wireformat heartbleed-       |  Actual Points:
  safety security parsing                        |
Parent ID:  #27143                               |         Points:
 Reviewer:  dgoulet                              |        Sponsor:
-------------------------------------------------+-------------------------
Changes (by rl1987):

 * status:  needs_revision => needs_information


Comment:

 Replying to [comment:8 dgoulet]:
 > This is my main worry right now:
 https://github.com/torproject/tor/pull/370#pullrequestreview-167479209
 >

 In RELAY_RESOLVED there's also TTL value, which NETINFO does not have. I
 suppose we could define an object consisting of type-length-value sequence
 and use it in both cells. That would require to either: 1) Implement file
 include feature in trunnel (AFAIK it doesn't support that) or 2) have both
 RELAY_RESOLVED and NETINFO cells defined in the same trunnel file (e.g.
 cells.trunnel or handshake.trunnel or something).

 Or we could explicitly decouple wire formats of the two cells and decide
 that they are independently defined. RELAY_RESOLVED addresses can have one
 of the five types (hostname, IPv4, IPv6, transient error, non-transient
 error), but does the same apply for NETINFO? Does it make sense to ever
 send hostname in NETINFO cell during handshake? Error conditions can
 always happen, but does Tor protocol specify a way to signal them when
 NETINFO cell is needed?

 My code takes second path, but I think we need to take a step back and do
 a little bit of design work here and possibly a patch to tor-spec
 regarding how addresses are represented in Tor cells and whether or not
 there is/should be a dependency between common part of wire format in
 different cells.

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


More information about the tor-bugs mailing list