diff options
-rw-r--r-- | doc/TODO | 48 |
1 files changed, 42 insertions, 6 deletions
@@ -42,7 +42,7 @@ Short-term: - Add '[...truncated]' or similar to truncated log entries (like the directory in connection_dir_process_inbuf()). . Make logs handle it better when writing to them fails. - - leave server descriptor out of directory if it's too old + o leave server descriptor out of directory if it's too old o Rename ACI to circID o integrate rep_ok functions, see what breaks - update tor faq @@ -88,6 +88,47 @@ Short-term: o Audit users of connnection_remove and connection_free outside of main.c; many should use mark_for_close instead. +Rendezvous service: + o Design and specify protocol + - Possible preliminary refactoring: + - Should we break circuits up into "circuit-with-cpath" and + "circuit-without-cpath"? + - We need a way to tag circuits as special-purpose circuits for: + - Connecting from Bob's OP to the introduction point + - Sending introduction requests from the IPoint to Bob + - Connecting from Alice to the rendezvous point for Bob + - Connecting from Bob to the rendezvous point for Alice + - Waiting at a rendezvous point to be joined + - Joined to another circuit at the rendezvous point. + (We should also enumerate all the states that these operations + can be in.) + - Code to configure hidden services + - Service descriptors + - OPs need to maintain identity keys for hidden services [NM] + - Code to generate and parse service descriptors [NM] + - Advertisement + - Generate y.onion hostnames [NM] + - Code to do an HTTP connection over Tor from within Tor. + - Publish service descriptors to directory + - Directory accepts and remembers service descriptors, and + delivers them as requested + - Code for OPs to retrieve (and cache?) service descriptors + - Rendezvous + - Code as needed to generate and parse all rendezvous-related + cell types, and do all handshaking. + - ORs implement introduction points + - OPs with hidden services establish introduction points + - ORs implement rendezvous points + - OPs notice y.onion URLs, and: + - Retrieve service descriptors + - Establish rendezvous points + - Send introduction requests to introduction points + - Communication + - OPs remember which circuits are used for which rendezvous + points, and can look up circuits by location-hidden service + - OPs send/handle BEGIN cells for location-hidden services + - End-to-end communication for location-hidden services + On-going . Better comments for functions! . Go through log messages, reduce confusing error messages. @@ -127,11 +168,6 @@ NICK . Handle half-open connections o Find an ftp proxy? wget --passive D Wait until there are packet redirectors for Linux . Get socks4a support into Mozilla - . Develop rendezvous points - X Handle socks commands other than connect, eg, bind? - o Design - - Spec - - Implement . Tests o Testing harness/infrastructure D System tests (how?) |