[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #31851 [Core Tor/Tor]: Implement some more optional modules in Tor
#31851: Implement some more optional modules in Tor
--------------------------+------------------------------------
Reporter: teor | Owner: teor
Type: task | Status: needs_review
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 teor):
* status: assigned => needs_review
* actualpoints: => 0.2
Comment:
Here is my proposed design:
Existing:
* --disable-module-dirauth
* Build tor without the Directory Authority module: tor can not run as a
directory authority.
* Disables AuthoritativeDirectory (minimal)
Partially Implemented:
* Disables *AuthoritativeDir*, and MinUptimeHidServDirectoryV2 options
* Maybe these options should move under Directory Authority Server
Options in the man page
* Disables all the options under Directory Authority Server Options
New:
* --disable-module-dircache
* Build tor without the Directory Cache module: tor can not run as a
directory cache or authority. Implies --disable-module-dirauth.
* Disables DirPort and DirCache (minimal)
* Disables all the other options under Directory Server Options
* Tor can't currently run as a dirauth without a DirPort, so we need the
dircache to dirauth dependency
* --disable-module-relay
* Build tor without the Relay module: tor can not run as a relay,
bridge, directory cache, or authority. Implies --disable-module-dircache
and --disable-module-dirauth.
* Disables ORPort and sets ClientOnly to 1 (minimal)
* Disables all the other options under Server Options
* Disables the --list-fingerprint, RelayBandwidth*,
MaxAdvertisedBandwidth, PerConnBW*, and ServerTransportPlugin options
* Maybe some of these options should move under Server Options in the
man page
* Tor can't currently run as a dircache without an ORPort, so we need
the relay to dircache dependency
Out of scope:
* an onion service module
* a module for code that is used by clients but not relays (for example,
address reachability)
* splitting bridge and non-bridge code
Here's the CI design:
* make all the CI jobs explicit using include (rather than the mix of
matrix and non-matrix jobs we have right now)
* we might want to backport this change, so future CI backports are
easier
* delete one of each pair of similar jobs with no options, rust,
distcheck, and module-dirauth
* add dircache and relay jobs
Here's how I want to proceed:
0. Make all CI jobs explicit, delete similar jobs, and backport
1. Implement minimal --disable-module-dircache which disables DirPort and
DirCache, with CI, but don't disable any code
2. Implement minimal --disable-module-relay which disables ORPort and sets
ClientOnly 1, with CI, but don't disable any code
3. For each source code module, decide if it can be disabled when relay,
dircache, or dirauth is disabled, and implement that change
4. Depending on the config or control refactors, also disable the config
or control for those modules
Should we avoid confusion by calling these options --disable-relay-mode ?
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/31851#comment:1>
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