[or-cvs] Make Tor use Niels Provos"s libevent instead of it"s current
Nick Mathewson
nickm at seul.org
Wed Jan 12 06:42:33 UTC 2005
Update of /home/or/cvsroot/tor/doc
In directory moria.mit.edu:/tmp/cvs-serv9851/doc
Modified Files:
TODO
Log Message:
Make Tor use Niels Provos's libevent instead of it's current
poll-but-sometimes-select mess. This will let us use faster async cores
(like epoll, kpoll, and /dev/poll), and hopefully work better on Windows
too.
There are some fairly nasty changes to main.c here; this will almost
certainly break something. But hey, that's what alphas are for.
Index: TODO
===================================================================
RCS file: /home/or/cvsroot/tor/doc/TODO,v
retrieving revision 1.248
retrieving revision 1.249
diff -u -d -r1.248 -r1.249
--- TODO 5 Jan 2005 19:45:28 -0000 1.248
+++ TODO 12 Jan 2005 06:42:31 -0000 1.249
@@ -70,7 +70,7 @@
- Windows
N - Make millisecond accuracy work on win32
- - Switch to WSA*Event code as a better poll replacement. Or maybe just
+ X Switch to WSA*Event code as a better poll replacement. Or maybe just
do libevent?
- Code cleanup
@@ -101,10 +101,24 @@
- Limit number of circuits that we preemptively generate based on past
behavior; use same limits in circuit_expire_old_circuits().
- Write limiting; configurable token buckets.
- - Switch to libevent? Evaluate it first.
- Make it harder to circumvent bandwidth caps: look at number of bytes
sent across sockets, not number sent inside TLS stream.
+ . Switch to libevent
+ o Evaluate libevent
+ o Convert socket handling
+ o Convert signal handling
+ o Convert timers
+ o Update configure.in
+ o Remove fakepoll
+ - Hold-open-until-flushed now works by accident; it should work by
+ design.
+ - The logic for reading from TLS sockets is likely to overrun the
+ bandwidth buckets under heavy load. (Really, the logic was
+ never right in the first place.) Also, we should audit all users
+ of get_pending_bytes().
+ - Make sure it works on more platforms.
+ - Find a way to make sure we have libevent 1.0 or later.
- QOI
- Let more config options (e.g. ORPort) change dynamically.
More information about the tor-commits
mailing list