mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
r8997@Kushana: nickm | 2006-09-28 23:40:22 -0400
[Needs review.] Add a BEGIN_DIR relay cell type for an easier in-protocol way to connect to directory servers through Tor. Previously, clients could only connect to director servers over Tor from exit nodes, but couldn't get directory information anonymously from a non-exit cache without getting a directory server involved. This needs testing, and needs client-side code to actually exercise it. svn:r8527
This commit is contained in:
@@ -52,7 +52,7 @@ P - Figure out why openssl 0.9.8c "make test" fails at sha256t test.
|
||||
Items for 0.1.2.x:
|
||||
o re-enable blossom functionality: let tor servers decide if they
|
||||
will use local search when resolving, or not.
|
||||
N - Document it.
|
||||
o Document it.
|
||||
- enumerate events of important things that occur in tor, so vidalia can
|
||||
react.
|
||||
N - Backend implementation
|
||||
@@ -61,11 +61,13 @@ R - Actually list all the events (notice and warn log messages are a good
|
||||
N - Specify general event system
|
||||
R - Specify actual events.
|
||||
|
||||
N - Have (and document) a BEGIN_DIR relay cell that means "Connect to your
|
||||
N . Have (and document) a BEGIN_DIR relay cell that means "Connect to your
|
||||
directory port."
|
||||
- Specify
|
||||
- Implement
|
||||
o Specify
|
||||
o Implement
|
||||
- Use for something, so we can be sure it works.
|
||||
- Test and debug
|
||||
|
||||
|
||||
x - We should ship with a list of stable dir mirrors -- they're not
|
||||
trusted like the authorities, but they'll provide more robustness
|
||||
|
||||
@@ -624,6 +624,7 @@ TODO:
|
||||
10 -- RELAY_DROP [forward or backward]
|
||||
11 -- RELAY_RESOLVE [forward]
|
||||
12 -- RELAY_RESOLVED [backward]
|
||||
13 -- RELAY_BEGIN_DIR [forward]
|
||||
|
||||
Commands labelled as "forward" must only be sent by the originator
|
||||
of the circuit. Commands labelled as "backward" must only be sent by
|
||||
@@ -710,6 +711,16 @@ TODO:
|
||||
Relay RELAY_DROP cells are long-range dummies; upon receiving such
|
||||
a cell, the OR or OP must drop it.
|
||||
|
||||
6.2.1. Opening a directory stream
|
||||
|
||||
If a Tor server is a directory server, it should respond to a
|
||||
RELAY_BEGIN_DIR cell as if it had received a BEGIN cell requesting a
|
||||
connection to its directory port. RELAY_BEGIN_DIR cells ignore exit
|
||||
policy, since the stream is local to the Tor process.
|
||||
|
||||
If the Tor server is not running a directory service, it should respond
|
||||
with a REASON_NOTDIRECTORY RELAY_END cell.
|
||||
|
||||
6.3. Closing streams
|
||||
|
||||
When an anonymized TCP connection is closed, or an edge node
|
||||
@@ -738,6 +749,8 @@ TODO:
|
||||
12 -- REASON_CONNRESET (Connection was unexpectedly reset)
|
||||
13 -- REASON_TORPROTOCOL (Sent when closing connection because of
|
||||
Tor protocol violations.)
|
||||
14 -- REASON_NOTDIRECTORY (Client send RELAY_BEGIN_DIR to a
|
||||
non-directory server.)
|
||||
|
||||
(With REASON_EXITPOLICY, the 4-byte IPv4 address or 16-byte IPv6 address
|
||||
forms the optional data; no other reason currently has extra data.
|
||||
|
||||
Reference in New Issue
Block a user