Loading doc/TODO +42 −6 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -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. Loading Loading @@ -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?) Loading Loading
doc/TODO +42 −6 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -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. Loading Loading @@ -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?) Loading