Log

Author Commit Date CI Message
Nick Mathewson 6d5440e8 2011-08-11T15:15:17 Fix handling of group rate limits under 64 bytes of burst The "min_share" logic, which was designed to prevent piles of extremely small writes when running up against a group rate limit, could lead to confusing behavior if you ever set a min_share less than your burst rate. If that happened, then as soon as your group rate limit was exhausted, you'd stop reading/writing, and never start again, since the amount readable/writeable would never actually hit min_share. We now cap min_share at the rate per tick. Found by George Kadianakis
Sebastian Hahn 5d1b255b 2011-08-10T19:11:55 Ignore deprecation warnings on OS X Starting with Lion, Apple decided to deprecate the system openssl. We can start requiring users to install their own openssl once OS X doesn't ship with it anymore.
Mitchell Livingston b4423029 2011-08-08T17:06:46 Allow OS-neutral builds for platforms where some versions have arc4random_buf
Joachim Bauch 4a343943 2011-07-26T10:31:18 Propagate errors on the underlying bufferevent to the user.
Nick Mathewson 1183f7e2 2011-08-01T10:27:56 Fix typo in event_compat.h comments.
Nick Mathewson a2fdf9b0 2011-07-18T23:37:59 Bump version to 2.0.13-stable-dev
Nick Mathewson 80414e22 2011-07-18T18:19:25 Bump version to 2.0.13-dev
Nick Mathewson 62b8ce58 2011-07-18T17:05:20 acks and changelog for 2.0.13-stable
Nick Mathewson b3b425eb 2011-07-18T12:45:50 Give Makefile.am echo a non-null argument. msys likes this
Nick Mathewson 00a7a0e4 2011-07-17T21:48:38 Fix a warning in evutil_rand when building with threads disabled
Nick Mathewson 4a5c82d6 2011-07-15T10:20:01 Use AM_CPPFLAGS in sample/Makefile.am, not AM_CFLAGS Reported by Dagobert Michelsen.
Nick Mathewson d5bd604a 2011-07-05T14:57:08 Add doxygen to .gitignore
Nick Mathewson caf695af 2011-07-05T14:55:09 Fix up test_evutil_snprintf
Nick Mathewson af6a05f7 2011-07-05T14:51:24 Merge remote-tracking branch 'github/20_size_fmt' into patches-2.0
Nick Mathewson 341e1b03 2011-07-05T13:04:30 Merge branch 'doxygen' into patches-2.0
Nick Mathewson aea0555b 2011-07-04T23:14:19 Update Doxyfile to produce more useful output
Nick Mathewson 2888facc 2011-07-04T23:02:11 Revise the event/evbuffer/bufferevent doxygen for clarity and accuracy
Nick Mathewson 49d11362 2011-07-05T00:11:59 Fix select.c compilation on systems with no NFDBITS
Nick Mathewson e7fe9270 2011-07-04T12:16:08 Merge remote-tracking branch 'github/20_global_locks_init' into patches-2.0
Mark Ellzey f87f5689 2011-07-04T11:47:24 Speed up invoke_callbacks on evbuffers when there are no callbacks This fixes a performance regression against 1.4
Joachim Bauch e050703d 2011-07-04T11:36:14 Fix bug in SSL bufferevents backed by a bev with a write high-watermarks Original mail: the logic that handles write watermarks in "bio_bufferevent_write" is not working. It currently doesn't write any data if the high watermark is *above* the amount of data to write (i.e. when there is actually enough room available).
Nicholas Marriott 8ee9f9c1 2011-07-02T21:49:07 Fix a few warnings on OpenBSD - redeclaration of dst_size - arpa/inet.h requires netinet/in.h first - don't use a local with the same name as a global - it isn't needed so remove it
Nick Mathewson e9340964 2011-06-22T11:22:35 Fix AIX build issue with TAILQ_FOREACH definition Reported by Lawnstein Chan.
Harlan Stenn e23cda3d 2011-06-21T10:05:28 Don't install event_rpcgen.py when --disable-libevent-install is used
Nick Mathewson 79ff78d2 2011-06-16T13:19:43 Merge branch '20_kqueue_badf' into patches-2.0
Nick Mathewson b031adf1 2011-06-14T14:37:49 Don't break when building tests from git without python installed
Nick Mathewson 812d42e8 2011-06-11T01:26:54 Simplify windows commandname logic in tinytest Instead of using a dup'd pointer, let's use a static array, so we don't need to free it. This patch also makes tinytest build on non-windows again.
Ed Day 57def346 2011-06-11T00:49:24 Fix tinytest invocation from windows shell Original post: This post is in response to a posting last December on a Windows regression fork failure ([Libevent-users] Re: Libevent 2.0.10-stable is released by Dongsheng Song). I noticed the question was not answered and I recently experienced the same error myself when trying to run the Windows regression tests myself. I checked the return status from the CreateProcess call and found it was "file not found". This led me to look at the command-line I was using which was .\regress in a Visual Studio 2008 command prompt window. Windows could not find the file because it did not have the .exe extension on the end. The code that builds the command should be modified to ensure the extension is present.
Nick Mathewson 3203f88c 2011-06-08T17:18:03 Use the correct printf args when formatting size_t Based on a patch from Mansour Moufid
Mansour Moufid 446cc7a0 2011-05-27T18:40:31 Check if the `evhttp_new_object' function in `http.c' returns NULL.
Nick Mathewson 1fd34ab4 2011-06-08T14:56:19 Report kqueue ebadf, epipe, and eperm as EV_READ events When asked to add one side of a pipe, and the other side has been closed, kqueue on NetBSD will say EBADF; kqueue on FreeBSD will say EPIPE, and kqueue on OpenBSD will say EPERM. So treat all of these as EV_READ events, to give the user an opportunity to notice that the pipe is closed. Diagnosed by Nicholas Marriott and Dale Rahn; based on a patch by Nicholas Marriott.
Nick Mathewson 09fe97da 2011-06-08T14:24:45 Replace an assertion for event_base_free(NULL) with a check-and-warn event_base_free(NULL) means "free the current event base". Previously, it would assert if there was no 'current' base. Now it just warns and returns. Reported by Gilad Benjamini
Nick Mathewson 89d5e09e 2011-06-08T14:18:41 Add some missing checks for mm_calloc failures Found by Gilad Benjamini
Nick Mathewson 4461f1a0 2011-06-06T15:11:28 Fix incorrect results from evbuffer_search_eol(EOL_LF) Our evbuffer_strchr() function [which was only used for search_eol(EOL_LF) could give incorrect results if it found its answer in the first chunk but didn't start searching from the front of the chunk. Also, this patch adds unit tests for evbuffer_search_eol, particularly in those cases that evbuffer_readln() tests didn't exercise.
Nick Mathewson 60c1426f 2011-06-04T21:36:34 Bump version to 2.0.12-stable-dev
Nick Mathewson 281ab5c5 2011-06-04T21:12:53 Merge branch 'patches-2.0' of ssh://levent.git.sourceforge.net/gitroot/levent/libevent into patches-2.0
Nick Mathewson 452a8342 2011-06-04T21:11:09 tweak date on changelog
Nick Mathewson be5e8575 2011-06-04T10:34:14 Merge branch 'patches-2.0' of ssh://levent.git.sourceforge.net/gitroot/levent/libevent into patches-2.0
Nick Mathewson c3555837 2011-06-03T17:08:30 Changelog and new credits for 2.0.12-stable
Nick Mathewson 7283facd 2011-06-03T17:08:14 Bump version to 2.0.12-stable. Not release just yet
Nick Mathewson bdfb8330 2011-06-03T17:06:17 Fix regress_ssl.c build on openbsd
Nick Mathewson 27ce38b6 2011-06-01T17:27:28 Avoid a segfault when all methods are disabled or broken
Nick Mathewson d54d3fc4 2011-06-01T13:48:02 cygwin: make it possible to build DLLs Patch from Brian Koehmstedt
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 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.
Peter Rosin 816115a1 2011-05-26T10:10:57 InitializeCriticalSectionAndSpinCount requires _WIN32_WINNT >= 0x0403.
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 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
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 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 06a714ff 2011-05-25T16:51:25 Fix new warnings from GCC 4.6
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 74760f18 2011-05-23T17:45:14 Fix a bug that prevented us from configuring IPv6 nameservers.
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."
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).
Dave Hart 09d39a12 2011-05-20T14:18:08 Fix compilation with GCC 2, which had no __builtin_expect
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
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
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 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 9556a7d1 2011-05-02T23:22:09 Add missing words to EVLOOP_NONBLOCK documentation
Nick Mathewson e7529fa4 2011-04-27T21:28:11 Bump version to 2.0.11-stable-dev
Nick Mathewson d4d55196 2011-04-27T20:25:57 Increment version number to 2.0.11-stable
Nick Mathewson 8255fda7 2011-04-27T20:15:20 Add more people to the acknowledgments
Nick Mathewson d30466fc 2011-04-27T20:03:46 Changelog for 2.0.11-stable
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 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 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
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.
Sebastian Hahn 12311ff4 2011-03-14T04:13:55 Add a forgotten NULL check to evhttp_parse_headers Issue detected by the clang static analyzer