diff options
author | Roger Dingledine <arma@torproject.org> | 2003-03-17 23:19:25 +0000 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2003-03-17 23:19:25 +0000 |
commit | 0ff1d28faecf2508ec7609be4a163cdd96f0329b (patch) | |
tree | a8c9e634542a4d3b0fbab494c453b3bc41bef8cf | |
parent | 4ad74c2141db709ff3c59e0547999f25a68efeae (diff) | |
download | tor-0ff1d28faecf2508ec7609be4a163cdd96f0329b.tar.gz tor-0ff1d28faecf2508ec7609be4a163cdd96f0329b.zip |
same todo file as before, just moving to doc/
svn:r189
-rw-r--r-- | doc/TODO | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/doc/TODO b/doc/TODO new file mode 100644 index 0000000000..5b11ee8398 --- /dev/null +++ b/doc/TODO @@ -0,0 +1,117 @@ + +Legend: +SPEC!! - Not specified +SPEC - Spec not finalized +NICK - nick claims +ARMA - arma claims + - Not done + * Top priority + . Partially done + o Done + D Deferred + X Abandoned + + + - Use a stronger cipher + - 3des for now + - aes when we everybody has openssl 0.9.7 + . Topics / circuits + o Implement topics + - Rotate circuits after N minutes? + - Circuits should expire when circuit->expire triggers +NICK . Handle half-open connections +NICK . On the fly compression of each stream + o Clean up the event loop (optimize and sanitize) + - Exit policies + - Path selection algorithms + - Let user request certain nodes + - And disallow certain nodes + - Choose path by jurisdiction, etc? + D Implement our own memory management, at least for common structs + . Appropriate logging + - Come up with convention for what log level means what + - Make code follow convention + . Terminology + o Circuits, topics, cells stay named that + - 'Connection' gets divided, or renamed, or something? + . DNS farm + o Distribute queries onto the farm, get answers + o Preemptively grow a new worker before he's needed + - Prune workers when too many are idle + o Keep track of which connections are in dns_wait + o Need to cache positives/negatives on the tor side + o Keep track of which queries have been asked + . Better error handling when + . An address doesn't resolve + - We have max workers running + - Consider taking the master out of the loop? + . Directory servers + - Automated reputation management +ARMA - Include key in source; sign directories +ARMA - Have directories list recommended-versions + - Quit if running the wrong version + - Command-line option to override quit + . Add more information to directory server entries + - Exit policies + - jurisdiction? others? +SPEC!! - Figure out how to do threshold directory servers + . Scrubbing proxies + - Find an smtp proxy? + - Find an ftp proxy? Figure out how that would work? + - Wait until there are packet redirectors for Linux + . Get socks4a support into Mozilla + . Get tor to act like a socks server + o socks4, socks4a + - socks5 +SPEC!! - Handle socks commands other than connect, eg, bind? + - Develop rendezvous points + D Implement reply onions + D Deploy and manage open source development site. + . Documentation + . Discussion of socks, tsocks, etc + - On-the-network protocol + - Onions + - Cells + . Better comments for functions! + - Tests + - Testing harness/infrastructure + - Unit tests + - System tests (how?) + - Performance tests, so we know when we've improved + . webload infrastructure (Bruce) + . httperf infrastructure (easy to set up) + . oprofile (installed in RH 8.0) + D Deploy a widespread network + . Router twins + o Choose twin if primary is down, when laying circuit + - Load balancing between twins + - Keep track of load over links/nodes, to + know who's hosed +NICK - Daemonize and package + o Teach it to fork and background + - Red Hat spec file + - Debian spec file equivalent + + . Autoconf + . Which .h files are we actually using? Port to: + o Linux + o BSD + . Solaris + . Windows +NICK . OS X + . Move away from openssl + o Abstract out crypto calls + D Look at ndss, others? Just include code? + + . transition addr to sin_addr (huh?) + + . Clean up the number of places that get to look at prkey +SPEC!! - Non-clique topologies, clearer bandwidth management + . Look at OR handshake in more detail + o Spec it + - Merge OR and OP handshakes? + - Periodic link key rotation. Spec? + - More flexibility in node addressing + - Support IPv6 rather than just 4 + - Handle multihomed servers + |