Log

Author Commit Date CI Message
Nick Mathewson 7b9d1395 2011-06-01T14:19:13 Try to squeeze a little more speed out of EVBUFFER_EOL_CRLF
Nick Mathewson 25fe3829 2011-06-01T14:02:56 Merge remote-tracking branch 'github/master'
Nick Mathewson d70dd220 2011-06-01T11:02:48 Merge pull request #17 from minaguib/master Improve speed of EVBUFFER_EOL_CRLF
Nick Mathewson 36f745df 2011-06-01T13:52:27 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson d54d3fc4 2011-06-01T13:48:02 cygwin: make it possible to build DLLs Patch from Brian Koehmstedt
Mina Naguib 5dde0f04 2011-05-31T13:56:56 Roughly 20% speed increase when line-draining a buffer using EVBUFFER_EOL_CRLF
Nick Mathewson 5926d601 2011-05-30T12:10:26 Merge branch '21_evport_improved'
Nick Mathewson 0dca19bb 2011-05-30T12:09:18 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 87c0dff6 2011-05-30T12:06:36 Merge branch '20_select_nfds' into patches-2.0
Nick Mathewson d90149d4 2011-05-30T11:53:19 Fix a fencepost bug in the select backend This bug would sometimes lead us to looking one bit off the end of the fdset arrays, and trying to activate a (nonexistent) event if that bit was set. Found by Harlann Stenn. Fixes a test failure on OpenSolaris.
Nick Mathewson 257651a4 2011-05-27T23:33:40 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson f47c15e7 2011-05-27T23:28:17 Make the new http_connect_fail_test use a multicast addr, not broadcast Turns out that FreeBSD does _not_ give a ENETUNREACH error when told to make a TCP socket to 255.255.255.255, but it is quite happy to do so for 239.10.20.30. So that's what we'll do. Found by Robert Ransom and Dave Hart.
Nick Mathewson 942e2268 2011-05-27T23:19:11 Merge remote-tracking branch 'origin/patches-2.0' Conflicts: evthread_win32.c listener.c
Peter Rosin 816115a1 2011-05-26T10:10:57 InitializeCriticalSectionAndSpinCount requires _WIN32_WINNT >= 0x0403.
Nick Mathewson 94b8e676 2011-05-27T22:54:16 Allow base-notification functions to exist without setting an fd The kqueue and evport backends can make good use of this.
Nick Mathewson e903db33 2011-05-27T15:31:40 Reenable main/many_events_slow_add for evport in 2.1 The various evport fixes should let it actually work again
Nick Mathewson c04d9276 2011-05-27T14:41:24 evport: Remove artificial low limit on max events per getn call Previously, evport could only handle up to 8 events per time through the loop. This would impose an artificially high number of syscalls on us to retrieve a large number of events. This code allows the EVLOOP_* flags to work more similarly to how they do on other platforms (up to 4096 events per syscall). Dispite dire warning (from 2006), doing this won't impose a big incremental RAM penalty: if you have 4096 events firing at once, you necessarily have a proportional number of events pending, and their associated data structures are already costing a good bit of RAM. This patch makes the main/many_events_slow_add test pass again.
Nick Mathewson 849a5cff 2011-05-27T14:28:39 evport: don't scan more events in ed_pending than needed
Nick Mathewson 276ec0ef 2011-05-27T14:22:50 evport: Use portev_user to remember fdinfo struct
Nick Mathewson 0f77efef 2011-05-27T14:15:32 evport: Remove a linear search over recent events when reactivating them
Nick Mathewson 4687ce4f 2011-05-27T13:44:41 evport: use evmap_io to track fdinfo status. Should save time and RAM.
Nick Mathewson 356720a2 2011-05-27T15:09:54 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 203ba274 2011-05-27T15:08:25 Fix a couple of signed/unsigned warnings in http.c
Nick Mathewson c11c6fcd 2011-05-27T14:57:55 Disable main/many_events_slow_add with evport backend In 2.0 and earlier, evport only reports up to 8 events at a time, which confuses this test badly.
Nick Mathewson 29e5f7ea 2011-05-26T17:45:54 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson dbb3c652 2011-05-26T17:43:17 Fix compilation.
Nick Mathewson f0c9b51c 2011-05-26T17:34:15 Merge branch 'intcmp_overflow_fixes' into patches-2.0
Mark Ellzey 1814ae96 2011-05-25T18:52:07 updated EV_S(s)IZE definitions
Mark Ellzey 84560fc4 2011-05-25T14:31:09 Added overflow checks in evhttp_read_body and evhttp_get_body
Mark Ellzey a2792722 2011-05-25T12:58:59 Added several checks for under/overflow conditions in evhttp_handle_chunked_read
Nick Mathewson 95f70166 2011-05-25T21:20:31 Merge remote-tracking branch 'origin/patches-2.0'
Sebastian Hahn d1b2d11b 2011-05-26T02:05:54 Always use evutil_snprintf, even if OS provides it In test/tinytest_local.h we can't redefine snprintf if the OS has it defined already.
Peter Rosin d41f3ea2 2011-05-25T19:54:44 Do not define WIN32 in Makefile.nmake
Peter Rosin 85078b1f 2011-05-25T19:54:33 In configure, test for _WIN32 not WIN32.
Nick Mathewson 9f560bfa 2011-05-25T19:50:56 Use "_WIN32", not WIN32: it's standard and we don't need to fake it This patch was automatically generated with perl. Based on a patch by Peter Rosin.
Nick Mathewson 0e95950e 2011-05-25T19:46:14 Merge remote-tracking branch 'origin/patches-2.0'
Peter Rosin 0de87fe6 2011-05-25T15:11:01 Use evutil_gettimeofday instead of relying on the system gettimeofday.
Peter Rosin 3d768dc9 2011-05-25T11:04:43 Fix winsock2.h #include issues with MSVC Define WIN32_LEAN_AND_MEAN, so that windows.h does not bring in winsock.h which in turn makes it impossible to #include <winsock2.h> (at least with MSVC)
Peter Rosin 8fa030c0 2011-05-26T00:03:38 Make sure TINYTEST_LOCAL is defined when building tinytest.c
Peter Rosin fe93022a 2011-05-25T10:58:48 unistd.h and sys/time.h might not exist.
Peter Rosin 70be7d17 2011-05-25T10:57:16 MSVC does not provide S_ISDIR, so provide it manually.
Peter Rosin f3c7a4c1 2011-05-25T10:56:32 Bring in the compile script from automake, if needed.
Peter Rosin 07c41bea 2011-05-25T10:55:41 Make the tests build when OpenSSL is not available. Don't #define HAVE_OPENSSL (to zero) when OpenSSL is not available. Code written as #ifdef HAVE_OPENSSL do not expect that.
Peter Rosin 86090ee1 2011-05-25T10:54:06 Link with -lshell32 and -ladvapi32 on Win32. SHGetSpecialFolderPath is in Shell32.dll and the RegOpenKey (et al) and CryptGenRandom (et al) functions are in -ladvapi32.dll. MinGW is "nice" and brings those in automatically, but specify them explicitly for other tool chains.
Nick Mathewson 9155b095 2011-05-25T16:52:50 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 06a714ff 2011-05-25T16:51:25 Fix new warnings from GCC 4.6
Nick Mathewson 173509d9 2011-05-23T18:25:05 Merge remote-tracking branch 'origin/patches-2.0'
Mansour Moufid 06c51cdf 2011-05-23T18:01:24 Prevent size_t overflow in evhttp_htmlescape. Modified the `html_replace' function so that it returns the length of the replacement string instead of the string itself. This is used to easily check for overflows of the `new_size' variable in the first for loop of the `evhttp_htmlescape' function, and thus potential out of bounds writes in the second for loop (if an overflow occurs in new_size, then new_size < old_size). Also check that new_size + 1 doesn't overflow in mm_malloc(new_size + 1). Removed the `scratch_space' variable from the `evhttp_htmlescape' function since it wasn't actually used; also removed the `buf' variable from the `evhttp_htmlescape' function since it was only used by `scratch_space'.
Nick Mathewson a9fe47f0 2011-05-23T17:50:45 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 74760f18 2011-05-23T17:45:14 Fix a bug that prevented us from configuring IPv6 nameservers.
Nick Mathewson 3ec46c0c 2011-05-23T01:44:05 Merge remote-tracking branch 'origin/patches-2.0'
Kevin Ko 57ddda78 2011-05-23T01:40:05 Test case for 0848814ac49616 "I'm not sure if you'll like my use of the limited broadcast address for simulating an ENETUNREACH error with a TCP connection, but it's the best that I could think of. Basically, we want to trigger a non-EINPROGRESS error in evutil_socket_connect() immediately at the connect() in order to bring about the assertion in the evhttp_connection_fail() error handling code."
Nick Mathewson 63d37bdd 2011-05-20T23:24:43 Merge remote-tracking branch 'origin/patches-2.0'
Kevin Ko 0848814a 2011-05-20T23:23:44 Fix failing assertion introducd in commit 0d6622e Patch in question: - Fix the case when failed evhttp_make_request() leaved request in the queue. - http://levent.git.sourceforge.net/git/gitweb.cgi?p=levent/libevent;a=commit;h=0d6622e The above patch introduces a failing assertion in evhttp_connection_fail(). This happens because the patch defers the assignment of the outstanding request to the evcon->requests list, while evhttp_connection_fail() assumes that the request lies in the list. One scenario in which this can happen is when the request list is empty and a connection is made to an unreachable host. The assertion will then fail after bufferevent_socket_connect() errors out (with ENETUNREACH in my case).
Nick Mathewson af5f1860 2011-05-20T23:08:25 Merge remote-tracking branch 'ellzey/feature/evhttp_parse_speedup'
Nick Mathewson cbab7dad 2011-05-20T14:21:55 Merge remote-tracking branch 'origin/patches-2.0'
Dave Hart 09d39a12 2011-05-20T14:18:08 Fix compilation with GCC 2, which had no __builtin_expect
Nick Mathewson 6b23518d 2011-05-06T11:06:11 Merge remote-tracking branch 'origin/patches-2.0'
Sebastian Hahn 5786b91e 2011-05-05T18:02:42 Fix a compile warning with zlib 1.2.4 and 1.2.5 I took this fix from Tor (commit 1a52e39c22d5, author Nick Mathewson, Copyright (c) 2007-2011, The Tor Project, Inc.) and adapted it slightly for libevent.
Sebastian Hahn 66193853 2011-05-05T16:27:55 Correctly detect openssl on windows
Mark Ellzey aee1a97d 2011-05-06T08:48:54 Performance tweak to evhttp_parse_request_line. Method parsing has been tweaked out to use a lookup table instead of multiple branching. In our testing it has increased performance by a fair bit.
Sebastian Hahn ceb03b90 2011-05-05T15:51:11 Move the win32 detection in configure.in
Sebastian Hahn 292092eb 2011-05-05T15:49:38 Use OPENSSL_LIBS in Makefile.am
Nick Mathewson 7889c43e 2011-05-04T16:23:02 Merge remote-tracking branch 'origin/patches-2.0'
Peter Rosin 7b819f2d 2011-05-04T16:37:58 Libtool brings in the dependencies of libevent_openssl.la automatically
Peter Rosin 274dd036 2011-05-04T16:34:28 libssl depends on libcrypto, not the other way around.
Nick Mathewson 96107974 2011-05-03T14:29:44 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson d11e9e0f 2011-05-03T14:22:48 Oops; that new unit test breaks for epoll. Fix it.
Nick Mathewson 28317a08 2011-05-03T13:54:57 Fix a warn-and-fail bug in kqueue by providing kevent() room to report errors Apparently, kevent fails gracefully if there is not enough space in its output events array to report every _event_... but it just dies and returns -1 if there is not enough space to report every _error_. There are a couple of possible fixes here. One would to handle -1 returns from kevent better by re-growing the array and retrying... but that seems a little error prone. Instead, I'm just going to say that the events array must be large enough to handle all the errors. This patch also adds a unit test designed to make sure that our many-events-out code works even if not all the events are added at once.
Nick Mathewson 22d50db8 2011-05-02T23:22:34 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 9556a7d1 2011-05-02T23:22:09 Add missing words to EVLOOP_NONBLOCK documentation
Nick Mathewson 1cae2260 2011-04-27T21:28:32 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson e7529fa4 2011-04-27T21:28:11 Bump version to 2.0.11-stable-dev
Nick Mathewson fc9bc656 2011-04-27T20:26:38 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson d4d55196 2011-04-27T20:25:57 Increment version number to 2.0.11-stable
Nick Mathewson aaa80ed4 2011-04-27T20:17:34 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 8255fda7 2011-04-27T20:15:20 Add more people to the acknowledgments
Nick Mathewson 6c2ef970 2011-04-27T20:07:13 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson d30466fc 2011-04-27T20:03:46 Changelog for 2.0.11-stable
Nick Mathewson 614b9bd1 2011-04-26T23:48:31 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson e49e64e7 2011-04-26T23:42:01 Fix clang warning when resetting connection This was a regression on 2.0.10-stable: clang was warning about values that were unused (because event_debug wasn't using them unless USE_DEBUG was defined). Found by Sebastian Hahn.
Nick Mathewson cea45590 2011-04-24T22:56:16 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson ea0d019b 2011-04-23T02:35:17 Use AM_CONDITIONAL, not AC_SUBST, to tell automake to build regress For some reason, this makes mingw much happier about building regress.exe by default. No, I'm afraid I don't know why.
Nick Mathewson 18f24ef4 2011-04-23T02:31:59 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 7739c86d 2011-04-23T02:31:04 Fix msvc build: it needed to know about _EVENT_HAVE_STRUCT_SOCKADDR_STORAGE
Nick Mathewson 53d1e450 2011-04-23T01:48:11 Try to fix up CHECK_REGRESS hack to not break on win32
Nick Mathewson dd68cce4 2011-04-23T01:47:43 Add missing header for regress_http compilation on win32
Nick Mathewson 99f147d9 2011-04-23T01:47:11 Merge branch '20_iocp_conn_sockopt' into patches-2.0
Nick Mathewson 52f9baee 2011-04-22T10:54:02 call setsockopt correctly on connecting() IOCP-bufferevents so shutdown() will work
Nick Mathewson 614a1712 2011-04-22T23:46:25 Merge remote-tracking branch 'origin/patches-2.0' Conflicts: evthread.c
Sebastian Hahn 646f9feb 2011-04-23T02:22:08 Zero a struct sockaddr_in before using it Found by Dave Heart
Sebastian Hahn 744c7456 2011-04-23T02:20:59 Remote some dead code from dns-example.c Found by Dave Heart
Sebastian Hahn 93a1abb3 2011-04-11T18:26:48 Check return value of evbuffer_add_cb in tests Caught by clang's static analyzer
Sebastian Hahn 4bac793e 2011-04-11T18:03:02 Be nice and "handle" error return values in sample code Caught by clang's static analyzer
Sebastian Hahn 48c44a6d 2011-04-11T17:48:23 Refactor test_getaddrinfo_async_cancel_stress() Turns out it didn't need an event base set up. Spotted by clang's static anaylzer
Sebastian Hahn 65707d7c 2011-04-11T17:40:14 add some (void) casts for unused variables All these places already have an XXX marker, so we know we need to fix them later. Let's not clutter the static analysis results with them.
Sebastian Hahn b693c324 2011-04-11T17:32:03 Actually send NULL request in http_bad_request_test Issue caught by clang's static analyzer
Sebastian Hahn 3819b62c 2011-04-11T17:23:08 Add a forgotten return value check in the unit tests Spotted by clang's static analyzer
Sebastian Hahn b0ff7eb5 2011-04-10T14:03:39 Add an assert to appease clang's static analyzer It got confused because in EVLOCK_ASSERT_LOCKED(lock) there is an if (lock) check.
Sebastian Hahn 5208544e 2011-03-14T04:24:33 Fix possible NULL-deref in evdns_cancel_request The clang static analyzer complained that base might be dereferenced without being set, but this patch should fix another dereference issue.