aboutsummaryrefslogtreecommitdiff
path: root/src/common/compat_libevent.h
Commit message (Expand)AuthorAge
* Make bufferevents work with TokenBucketRefillIntervalNick Mathewson2011-09-22
* Apply rate-limiting to the lowest bufferevent in the stack.•••When we're doing filtering ssl bufferevents, we want the rate-limits to apply to the lowest level of the bufferevent stack, so that we're actually limiting bytes sent on the network. Otherwise, we'll read from the network aggressively, and only limit stuff as we process it. Nick Mathewson2011-08-24
* Automatically use filtering bufferevents with IOCP.Nick Mathewson2011-08-18
* Merge remote-tracking branch 'origin/maint-0.2.2'•••The conflicts were mainly caused by the routerinfo->node transition. Conflicts: src/or/circuitbuild.c src/or/command.c src/or/connection_edge.c src/or/directory.c src/or/dirserv.c src/or/relay.c src/or/rendservice.c src/or/routerlist.c Nick Mathewson2011-05-30
|\
| * whitespace fixesNick Mathewson2011-05-30
* | Merge remote-tracking branch 'origin/maint-0.2.2'•••Conflicts: src/common/compat.c src/or/main.c Nick Mathewson2011-05-30
|\|
| * Use a 64-bit type to hold sockets on win64.•••On win64, sockets are of type UINT_PTR; on win32 they're u_int; elsewhere they're int. The correct windows way to check a socket for being set is to compare it with INVALID_SOCKET; elsewhere you see if it is negative. On Libevent 2, all callbacks take sockets as evutil_socket_t; we've been passing them int. This patch should fix compilation and correctness when built for 64-bit windows. Fixes bug 3270. Nick Mathewson2011-05-23
* | Add a new option to enable/disable IOCP supportNick Mathewson2010-09-28
* | Convert bufferevents to use rate-limiting.•••This requires the latest Git version of Libevent as of 24 March 2010. In the future, we'll just say it requires Libevent 2.0.5-alpha or later. Since Libevent doesn't yet support hierarchical rate limit groups, there isn't yet support for tracking relayed-bytes separately when using the bufferevent system. If a future version does add support for hierarchical buckets, we can add that back in. Nick Mathewson2010-09-27
* | Teach read_event/write_event manipulators about bufferevents.•••Add an --enable-bufferevents config switch. Nick Mathewson2010-09-27
|/
* Use Libevent 2.0's periodic timers where available.•••These timers behave better with non-monotonic clocks than our old ones, and also try harder to make once-per-second events get called one second apart, rather than one-plus-epsilon seconds apart. This fixes bug 943 for everybody using Libevent 2.0 or later. Nick Mathewson2010-06-25
* Make the DNSPort option work with libevent 2.x•••We need to use evdns_add_server_port_with_base() when configuring our DNS listener, because libevent segfaults otherwise. Add a macro in compat_libevent.h to pick the correct implementation depending on the libevent version. Fixes bug 1143, found by SwissTorExit Sebastian Hahn2010-02-19
* Whitespace and osx fixes on libevent2 patch.Nick Mathewson2009-06-12
* Make Tor compile with Libevent 1.0 again.Nick Mathewson2009-06-12
* Move the Libvent setup logic into compat_libevent from config.•••This has been some pretty ugly and voodoo-laden code. I've tried to clean it up a bit, but more work probably remains. Nick Mathewson2009-06-12
* Update Tor to use Libevent 2.0 APIs when available.•••This patch adds a new compat_libevent.[ch] set of files, and moves our Libevent compatibility and utilitity functions there. We build them into a separate .a so that nothing else in src/commmon depends on Libevent (partially fixing bug 507). Also, do not use our own built-in evdns copy when we have Libevent 2.0, whose evdns is finally good enough (thus fixing Bug 920). Nick Mathewson2009-06-12