| Commit message (Expand) | Author | Age |
* | appease check-spaces | Sebastian Hahn | 2011-11-24 |
* | Disable IOCP and retry event_base_new_with_config once on failure•••This is a fancier bug4457 workaround for 0.2.3. In 0.2.2, we could
just tell Libevent "Don't enable locking!" so it wouldn't try to make
the event_base notifiable. But for IOCP, we need a notifiable base.
(Eventually, we'll want a notifiable base for other stuff, like
multithreaded crypto.) So the solution is to try a full-featured
initialization, and then retry with all the options turned off if that
fails.
| Nick Mathewson | 2011-11-14 |
* | Merge remote-tracking branch 'public/bug4457_022' into bug4457_master•••Conflicts:
src/common/compat_libevent.c
Resolving conflict by not taking 7363eae13cb8 ("Use the
EVENT_BASE_FLAG_NOLOCK flag to prevent socketpair() invocation"): in
Tor 0.2.3.x, we _do_ sometimes use notifiable event bases.
| Nick Mathewson | 2011-11-14 |
|\ |
|
| * | Detect failure from event_init() or event_base_new_with_config() | Nick Mathewson | 2011-11-14 |
| * | Use the EVENT_BASE_FLAG_NOLOCK flag to prevent socketpair() invocation•••In Tor 0.2.2, we never need the event base to be notifiable, since we
don't call it from other threads. This is a workaround for bug 4457,
which is not actually a Tor bug IMO.
| Nick Mathewson | 2011-11-14 |
* | | Make bufferevents work with TokenBucketRefillInterval | Nick Mathewson | 2011-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 Mathewson | 2011-08-24 |
* | | Automatically use filtering bufferevents with IOCP. | Nick Mathewson | 2011-08-18 |
* | | Call evthread_use_windows_threads when running with IOCP on windows | Nick Mathewson | 2011-08-17 |
* | | Replace 4 more sscanf()s with tor_sscanf()•••For some inexplicable reason, Coverity departs from its usual
standards of avoiding false positives here, and warns about all
sscanf usage, even when the formatting strings are totally safe.
Addresses CID # 447, 446.
| Nick Mathewson | 2011-07-01 |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'•••Conflicts:
src/common/Makefile.am
src/or/control.c
| Nick Mathewson | 2011-05-23 |
|\| |
|
| * | Fix comment typo | Robert Ransom | 2011-05-12 |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'•••Conflicts:
src/common/address.c
src/common/compat_libevent.c
src/common/memarea.c
src/common/util.h
src/or/buffers.c
src/or/circuitbuild.c
src/or/circuituse.c
src/or/connection.c
src/or/directory.c
src/or/networkstatus.c
src/or/or.h
src/or/routerlist.c
| Nick Mathewson | 2011-04-07 |
|\| |
|
| * | Clean up a comment-conversation about bad libevent version/method combos | Nick Mathewson | 2011-03-25 |
* | | Merge remote-tracking branch 'origin/maint-0.2.2' | Nick Mathewson | 2011-03-16 |
|\| |
|
| * | Resolve the one DOCDOC in the 0.2.2 code atm | Nick Mathewson | 2011-03-16 |
* | | Merge remote-tracking branch 'origin/maint-0.2.2'•••Trivial Conflicts in
src/common/crypto.c
src/or/main.h
src/or/or.h
| Nick Mathewson | 2011-03-16 |
|\| |
|
| * | Doxygen documentation for about 100 things that didn't have any•••About 860 doxygen-less things remain in 0.2.2
| Nick Mathewson | 2011-03-16 |
* | | Merge remote branch 'origin/maint-0.2.2' | Nick Mathewson | 2011-01-03 |
|\| |
|
| * | Bump copyright statements to 2011 (0.2.2) | Nick Mathewson | 2011-01-03 |
* | | Merge remote branch 'origin/maint-0.2.2' | Nick Mathewson | 2010-12-21 |
|\| |
|
| * | Do not send Libevent log messages to a controller.•••Doing so could make Libevent call Libevent from inside a Libevent
logging call, which is a recipe for reentrant confusion and
hard-to-debug crashes. This would especially hurt if Libevent
debug-level logging is enabled AND the user has a controller
watching for low-severity log messages.
Fix bug 2190; fix on 0.1.0.2-rc.
| Nick Mathewson | 2010-11-19 |
* | | Turn on epoll changelists with libevent 2.0.9-rc and later•••Libevent 2.0 has a "changelist" feature that avoids making redundant
syscalls if we wind up doing a lot of event_add/event_del operations
on the same fd in a row. Unfortunately, due to a weird design
choice in Linux, it doesn't work right with epoll when multiple fds
refer to the same socket (e.g., one is a dup() of the other). We
don't dup() anything we give to Libevent, though, so it is safe for
us to explicitly turn this feature on.
| Nick Mathewson | 2010-12-16 |
* | | Fix one-time memory leak when initializing libevent. Spotted by Sebastian | Nick Mathewson | 2010-10-15 |
* | | Fix an apostrophe in a comment | Nick Mathewson | 2010-10-15 |
* | | Fix an xxx wrt picking libevent methods known-to-work•••The short version is, "where we want to do it, we have nothing real to
chose from and we can't do it easily. Where it's easy to do, we have
no reason to do it yet."
| Nick Mathewson | 2010-10-15 |
* | | make c612ddee compile with old libevents | Roger Dingledine | 2010-09-29 |
* | | Add a new option to enable/disable IOCP support | Nick Mathewson | 2010-09-28 |
* | | Fix whitespace in bufferevents branch | Nick Mathewson | 2010-09-27 |
* | | Some bufferevents related fixes and pointers for nickm | Sebastian Hahn | 2010-09-27 |
* | | 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 Mathewson | 2010-09-27 |
|/ |
|
* | whitespace fix | Sebastian Hahn | 2010-07-27 |
* | Make sure we don't warn for libevent versions like 1.4.14b-stable | Sebastian Hahn | 2010-07-26 |
* | Rename log.h to torlog.h•••This should make us conflict less with system files named "log.h".
Yes, we shouldn't have been conflicting with those anyway, but some
people's compilers act very oddly.
The actual change was done with one "git mv", by editing
Makefile.am, and running
find . -name '*.[ch]' | xargs perl -i -pe 'if (/^#include.*\Wlog.h/) {s/log.h/torlog.h/; }'
| Nick Mathewson | 2010-07-09 |
* | Fix a compile error when building with Libevent before 1.4.5-stable•••Older versions of Libevent forgot to declare enough function arguments
constant.
| Nick Mathewson | 2010-06-25 |
* | 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 Mathewson | 2010-06-25 |
* | Fix a compilation warning on compat_libevent.c on some versions of windows li... | Nick Mathewson | 2010-04-19 |
* | Update copyright dates for files not in maint-0.2.1 | Nick Mathewson | 2010-02-27 |
* | Remove duplicate words and a duplicate newline. | Karsten Loesing | 2009-12-18 |
* | Set EV_PERSIST flag on signal events with Libevent < 2.0.•••Fix for bug 1007.
| Nick Mathewson | 2009-06-18 |
* | Fix bug 1001•••For compatibility with Libevent2, tor_event_new should accept
a NULL base without crashing.
| Sebastian Hahn | 2009-06-16 |
* | Whitespace and osx fixes on libevent2 patch. | Nick Mathewson | 2009-06-12 |
* | Make Tor compile with Libevent 1.0 again. | Nick Mathewson | 2009-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 Mathewson | 2009-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 Mathewson | 2009-06-12 |