diff options
author | Nick Mathewson <nickm@torproject.org> | 2003-09-25 05:17:11 +0000 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2003-09-25 05:17:11 +0000 |
commit | 3d4ccb781ae5d74f0e16a63c89e08459d15cccf1 (patch) | |
tree | 3e9f214701c4a09bc45b453374bd6806f253a1a4 /doc | |
parent | a3bd8b5483bfb3813ba814c8d73840ca993e0298 (diff) | |
download | tor-3d4ccb781ae5d74f0e16a63c89e08459d15cccf1.tar tor-3d4ccb781ae5d74f0e16a63c89e08459d15cccf1.tar.gz |
Refactor buffers; implement descriptors.
'buf_t' is now an opaque type defined in buffers.c .
Router descriptors now include all keys; routers generate keys as
needed on startup (in a newly defined "data directory"), and generate
their own descriptors. Descriptors are now self-signed.
Implementation is not complete: descriptors are never published; and
upon receiving a descriptor, the directory doesn't do anything with
it.
At least "routers.or" and orkeygen are now obsolete, BTW.
svn:r483
Diffstat (limited to 'doc')
-rw-r--r-- | doc/TODO | 2 | ||||
-rw-r--r-- | doc/tor-spec.txt | 13 |
2 files changed, 10 insertions, 5 deletions
@@ -48,7 +48,7 @@ NICK - instruments ORs to report stats . integrate rep_ok functions, see what breaks ARMA - configure log files. separate log file, separate severities. ARMA - what assumptions break if we fclose(0) when we daemonize? -NICK - make buffer struct elements opaque outside buffers.c +NICK o make buffer struct elements opaque outside buffers.c ARMA - Go through log messages, reduce confusing error messages. ARMA - make the logs include more info (fd, etc) ARMA - add log convention to the HACKING file diff --git a/doc/tor-spec.txt b/doc/tor-spec.txt index 5f17e3796..5203ed7c1 100644 --- a/doc/tor-spec.txt +++ b/doc/tor-spec.txt @@ -439,12 +439,16 @@ which reveals the downstream node. (Unless otherwise noted, tokens on the same line are space-separated.) -Router ::= Router-Line Public-Key Signing-Key? Exit-Policy NL +Router ::= Router-Line Onion-Key Link-Key Signing-Key Exit-Policy Router-Signature NL Router-Line ::= "router" address ORPort APPort DirPort bandwidth NL -Public-key ::= a public key in PEM format NL -Signing-Key ::= "signing-key" NL signing key in PEM format NL +Onion-key ::= "onion-key" NL a public key in PEM format NL +Link-key ::= "link-key" NL a public key in PEM format NL +Signing-Key ::= "signing-key" NL a public key in PEM format NL Exit-Policy ::= Exit-Line* Exit-Line ::= ("accept"|"reject") string NL +Router-Signature ::= "router-signature" NL Signature +Signature ::= "-----BEGIN SIGNATURE-----" NL + Base-64-encoded-signature NL "-----END SIGNATURE-----" NL ORport ::= port where the router listens for routers/proxies (speaking cells) APPort ::= where the router listens for applications (speaking socks) @@ -475,7 +479,8 @@ Directory ::= Directory-Header Directory-Router Router* Signature Directory-Header ::= "signed-directory" NL Software-Line NL Software-Line: "recommended-software" comma-separated-version-list Directory-Router ::= Router -Signature ::= "directory-signature" NL "-----BEGIN SIGNATURE-----" NL +Directory-Signature ::= "directory-signature" NL Signature +Signature ::= "-----BEGIN SIGNATURE-----" NL Base-64-encoded-signature NL "-----END SIGNATURE-----" NL Note: The router block for the directory server must appear first. |