[tor-bugs] #31851 [Core Tor/Tor]: Implement some more optional modules in Tor

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Sep 25 17:34:10 UTC 2019


#31851: Implement some more optional modules in Tor
--------------------------+------------------------------------
 Reporter:  teor          |          Owner:  teor
     Type:  task          |         Status:  new
 Priority:  Medium        |      Milestone:  Tor: 0.4.3.x-final
Component:  Core Tor/Tor  |        Version:
 Severity:  Normal        |     Resolution:
 Keywords:  tor-design    |  Actual Points:  0.2
Parent ID:                |         Points:  5
 Reviewer:  nickm         |        Sponsor:  Sponsor31-can
--------------------------+------------------------------------
Changes (by nickm):

 * status:  needs_review => new


Comment:

 I think that this proposal is reasonable.  Let's make a new ticket or set
 of tickets for disabling relay/cache stuff specifically.

 I think that it is reasonable to have the ability to disable dircache and
 relay code inside the codebase, but I do wonder whether it makes sense to
 expose them separately in the configuration. Right now, there's not really
 any way to be a useful dircache without being a relay, and we assume that
 nearly any relay is potentially a dircache.  Maybe having a --disable-
 relay-mode makes sense here.

 These modules are intended to be relay-only:
   * feature/relay

 These modules are intended to be dircache-only:
   * feature/dircache

 These modules are _mostly_ relay-only:
   * feature/hibernate
   * feature/stats

 These modules have significant parts that are relay-only:
   * feature/hs
   * feature/hs_common
   * feature/rend
   * core/crypto
   * lib/compress
   * core/mainloop
   * core/or

 (In general, if a module is _mostly_ relay only, we should split it into
 two modules, one of which is completely disabled and one of which is not.)

 I also expect will also find parts of src/core and src/app that are relay-
 specific.

 -----

 In general, as we are disabling code, we should remember that it is better
 to only stub out code that is called from higher-level modules.  When code
 is called from lower-level modules, we should look for a way to remove the
 inverted dependency entirely.

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


More information about the tor-bugs mailing list