Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 9b5c19ac | 2010-08-10 11:46:00 | Merge branch 'more_pkgconfig' | ||
| ebcb1f03 | 2010-08-10 11:11:25 | Add pkgconfig files for libevent_{openssl,pthreads} | ||
| 556d0f40 | 2010-08-06 21:19:44 | Increment versions to 2.0.6-rc | ||
| ec347b92 | 2010-07-07 16:45:03 | Move event-config.h to include/event2 This change means that all required include files are in event2, and all files not in event2/* are optional. | ||
| 14250031 | 2010-06-23 01:15:15 | Really only add libevent_core.la to LIBADD on mingw Commit fdc629736e1 tried to do this, but added it for mingw and for everything else. Fixes a segfault in bufferevent unittests. | ||
| 9659eced | 2010-06-19 18:23:16 | Add a comment to describe our plan for library versioning | ||
| b2d7440a | 2010-06-19 18:22:48 | Set library version for libevent_pthreads correctly | ||
| ad9b7f15 | 2010-05-09 00:22:08 | Increment version numbers for 2.0.5-beta | ||
| fdc62973 | 2010-05-06 14:37:23 | Only add libevent_core.la to LIBADD on mingw Chris Davis reports that this is also necessary to fix building with shared libraries on OSX for him. Should fix bug 2997775. There is probably a better fix for the issues solved by commit 3cbca8661f, but for now, we're trying to get a beta out the door. | ||
| 25433b96 | 2010-05-06 14:37:23 | Only specify -no-undefined on mingw It turns out that commit 3cbca8661f broke building with shared libraries on OSX. Since -no-undefined is only necessary on platforms like win32, only use it there. There may be a better fix for this. Should fix bug 2997775. | ||
| 7731ec88 | 2010-05-06 13:26:05 | Stop distributing and installing manpages: they were too inaccurate It would be great to have the manpages come back some time, perhaps from a refactoring of my asciidoc book, but for now the existing manpages were the single worst, most incomplete, and most misleading libevent documentation we had. (Less misleading: the doxygen output, the header files, and my reference book.) | ||
| 3cbca866 | 2010-04-12 12:52:31 | Create shared libraries under Windows | ||
| 9eb2fd75 | 2010-03-22 13:27:47 | Use dist_bin_SCRIPTS, not EXTRA_DIST, to distribute scripts | ||
| 77c917de | 2010-03-12 14:37:54 | Give a better warning for bad automake versions. If you tried to build with automake-1.6 or earlier, we would previously spit out pages and pages of garbage output. Now, automake should just say "Hey, I'm not new enough for this." | ||
| 0794b0d2 | 2010-03-12 14:21:52 | Remove an orphaned RELEASE flag in Makefile.am | ||
| 2e898f54 | 2010-03-12 14:16:30 | Switch to using AM conditionals in place of AC_LIBOBJ AC_LIBOBJ is really only meant for defining missing library functions, not conditional code compilation. Sticking our conditionally compiled modules in SYS_SRC should make stuff easier to maintain. | ||
| b660edf9 | 2010-03-12 13:22:47 | Remove redundant stuff from EXTRA_DIST To a first approximation, sources that are mentioned anywhere in an automake file don't need to get mentioned in EXTRA_DIST. | ||
| 426c8fbe | 2010-03-12 13:09:28 | Support the standard 'make check' target in place of 'make verify' Based on patch 2816088 from Zack Weinberg | ||
| 22aff049 | 2010-03-01 22:06:12 | Distribute libevent.pc.in, not libevent.pc | ||
| 9669ade5 | 2010-02-28 12:55:29 | Bump the version to 2.0.4-alpha | ||
| d4de062e | 2010-02-10 17:19:18 | Add an arc4random implementation for use by evdns Previously, evdns was at the mercy of the user for providing a good entropy source; without one, it would be vulnerable to various active attacks. This patch adds a port of OpenBSD's arc4random() calls to Libevent [port by Chris Davis], and wraps it up a little bit so we can use it more safely. | ||
| 70670067 | 2010-01-19 13:55:53 | Add a LICENSE file so people can find our license easily For what it's worth, we are aware that "Copyright $YEAR $NAME" is sufficient notice of copyright on software under US law and Internationally, and saying Copyright (c) $YEAR $NAME is a bit nutty. The character sequence (c) has never been ruled to have the same force in US law as the actual copyright symbol, and that neither of these US-specific symbols adds anything of value beyond saying "Copyright" since the Berne convention took effect in the US back in 1989. Similarly, saying "all rights reserved" doesn't do anything magical unless your software goes in a time-warp back to when the Buenos Aires Convention was the general rule. (And what will they run it on back then?) And what would even lead you to say "All Rights Reserved" when you're explicitly granting most of those rights to anybody receiving the work in accordance with the 3-clause BSD license? But still the FOSS community retains these ritual notations out of a kind of cargo-cult lawyering. Who knows? Perhaps one day, if we write our copyright notices ineptly enough, John Frum will come and give us a DFSG-compatible license that everybody can get behind. (Also, I am not a lawyer. The above should not be taken as legal advice. -- Nick) | ||
| 27308aae | 2010-01-14 16:30:40 | Changelist code to defer event changes until just before dispatch This is necessary or useful for a few reasons: 1) Sometimes applications will add and delete the same event more than once between calls to dispatch. Processing these changes immediately is needless, and potentially expensive (especially if we're on a system that makes one syscall per changed event). Yes, this actually happens in practice for nonpathological code, such as in cases where the user's callback conditionally re-adds a non-persistent event, or where draining a buffer turns off writing and invokes a user callback which adds more data which in turn re-enabled writing. 2) Sometimes we can coalesce multiple changes on the same fd into a single syscall if we know about them in advance. For example, epoll can do an add and a delete at the same time, but only if we have found out about both of them before we tell epoll. 3) Sometimes adding an event that we immediately delete can cause unintended consequences: in kqueue, this makes pending events get reported spuriously. | ||
| 737c9cd8 | 2009-11-27 13:16:54 | Rate-limiting for bufferevents; group and individual limits are supported. The fairness algorithms are not the best, not every bufferevent type is supported, and some of the locking tricks here are simply absurd. Still, this code should be a good first step. | ||
| c69d5a5d | 2009-12-22 12:03:46 | Remove the contents of WIN32-Prj as unmaintained. Makefile.nmake is now the preferred way to build with MSVC; the project files haven't worked properly in ages. | ||
| 347952ff | 2009-11-27 15:20:43 | Revise the locking API: deprecate the old locking callbacks and add trylock. Previously, there was no good way to request different kinds of lock (say, read/write vs writeonly or recursive vs nonrecursive), or for a lock function to signal failure (which would be important for a trylock mode). This patch revises the lock API to be a bit more useful. The older lock calls are still supported for now. We also add a debugging mode to catch common errors in using the locking APIs. | ||
| 86f57420 | 2009-11-16 22:25:46 | Add two implementations of getaddrinfo: one blocking and one nonblocking. The entry points are evutil_getaddrinfo and evdns_getaddrinfo respectively. There are fairly extensive unit tests. I believe this code conforms to RFC3493 pretty closely, but there are probably more issues. It should get tested on more platforms. This code means we can dump the well-intentioned but weirdly-implemented bufferevent_evdns and evutil_resolve code. svn:r1537 | ||
| 43ba6693 | 2009-11-05 20:45:07 | Export nmakefiles in source distribution. svn:r1509 | ||
| d3401928 | 2009-11-05 18:49:08 | Rename win32.c to win32select.c, and take it out of the WIN32-Code ghetto. svn:r1504 | ||
| d14c3b45 | 2009-11-05 18:25:46 | Fix another ssize_t user svn:r1503 | ||
| 0b9eb1bf | 2009-11-03 20:40:48 | Add a bufferevent function to resolve a name then connect to it. This function, bufferevent_socket_connect_hostname() can either use evdns to do the resolve, or use a new function (evutil_resolve) that uses getaddrinfo or gethostbyname, like http.c does now. This function is meant to eventually replace the hostname resolution mess in http.c. svn:r1496 | ||
| 0fd0255f | 2009-11-03 19:54:56 | Remove compat/sys/_time.h I've gone through everything that it declared to see where it was used, and it seems that we probably don't need it anywhere. Here's what it declared, and why I think we're okay dropping it. o struct timeval {} (Used all over, and we can't really get away with declaring it ourselves; we need the same definition the system uses. If we can't find struct timeval, we're pretty much sunk.) o struct timespec {} (Used in event.c, evdns.c, kqueue.c, evport.c. Of these, kqueue.c and event.c include sys/_time.h. event.c conditions its use on _EVENT_HAVE_CLOCK_GETTIME, and kqueue() only works if timespec is defined.) o TIMEVAL_TO_TIMESPEC (Used in kqueue.c, but every place with kqueue has sys/time.h) o struct timezone {} (event2/util.h has a forward declaration; only evutil.c references it and doesn't look at its contents.) o timerclear, timerisset, timercmp, timeradd, timersub (Everything now uses the evutil_timer* variants.) o ITIMER_REAL, ITIMER_VIRTUAL, ITIMER_PROF, struct itemerval (These are only used in test/regress.c, which does not include _time.h) o CLOCK_REALTIME (Only used in evdns.c, which does not include _time.h) o TIMESPEC_TO_TIMEVAL o DST_* o timespecclear, timespecisset, timespeccmp, timespecadd, timespecsub o struct clockinfo {} o CLOCK_VIRTUAL, CLOCK_PROF o TIMER_RELTIME, TIMER_ABSTIME (unused) svn:r1494 | ||
| 709c21c4 | 2009-07-28 04:03:57 | Bufferevent support for openssl. This code adds a new Bufferevent type that is only compiled when the openssl library is present. It supports using an SSL object and an event alert mechanism, which can either be an fd or an underlying bufferevent. There is still more work to do: the unit tests are incomplete, and we need to support flush and shutdown much better. Sometimes events are generated needlessly: this will hose performance. There's a new encrypting proxy in sample/le-proxy.c. This code has only been tested on OSX, and nowhere else. svn:r1382 | ||
| 0cc10e41 | 2009-07-13 20:02:49 | Use -version-info, not -release. Patch from Zack Weinberg. His description: This one might be a little more controversial. Libtool's -release and -version-info options are supposed to be mutually exclusive, but it doesn't either enforce that or make it sufficiently clear in the manual. Using both makes the -version-info switch ineffective; you will get sonames like "libevent-2.0.so.1", "libevent-2.1.so.1", etc., even though version 2.1 will presumably be backward ABI compatible with 2.0. This patch just takes out the -release switches and bumps the -version-info value to 2:0:0 so that people looking at the files in /usr/lib will not be confused (it'll be "libevent.so.2"). This does change the soname, but the current release is labeled an alpha, and it would be better to stop using both switches as soon as possible, before someone over at libtool headquarters decides to enforce the mutual exclusivity here... Note that libevent_pthreads is not being linked with any versioning switches I didn't change that because I wasn't sure whether it was intentional. svn:r1339 | ||
| 85b0a7a2 | 2009-05-15 01:38:23 | We were distributing the wrong event-config.h with our source distributions. Fix that. svn:r1289 | ||
| fe47003d | 2009-05-05 16:52:37 | Make unit tests for bufferevent_async compile and _almost_ work. Either I need to make the callbacks get deferred in a base with no events (doable), or I need to make it okay to call launch_read from inside the callback for read (tricky). svn:r1277 | ||
| 659d54d5 | 2009-05-05 02:59:26 | Add new code to make and accept connections. This is stuff that it's easy to get wrong (as I noticed when writing bench_http), and that takes up a fair amount of space (see http.c). Also, it's something that we'll eventually want to abstract to use IOCP, where available. svn:r1272 | ||
| 0c15d6ab | 2009-04-19 13:33:52 | defer-internal.h was missing from dist; so our first tar ball did not even compile. ouch. svn:r1207 | ||
| d047b323 | 2009-04-17 17:22:32 | Increment version to 2.0.1-alpha, and add a numeric version facility svn:r1193 | ||
| 9097c95b | 2009-04-17 06:56:23 | Rename whatsnew file to reflect actual version. svn:r1184 | ||
| 838d0a81 | 2009-04-17 06:55:08 | Document many internal functions and pieces of code. svn:r1181 | ||
| edfc28ca | 2009-04-17 00:24:58 | pkgconfig support from Ted Bullock svn:r1177 | ||
| 93d4f884 | 2009-04-14 20:11:10 | Make buffer iocp stuff compile happily svn:r1174 | ||
| 23085c92 | 2009-04-10 15:01:31 | Add a linked-pair abstraction to bufferevents. The new bufferevent_pair abstraction works like a set of buferevent_sockets connected by a socketpair, except that it doesn't require a socketpair, and therefore doesn't need to get the kernel involved. It's also a good way to make sure that deferred callbacks work. It's a good use case for deferred callbacks: before I implemented them, the recursive relationship between the evbuffer callback and the read callback would make the unit tests overflow the stack. svn:r1152 | ||
| 23655dfb | 2009-03-12 17:43:43 | include Doxyfile in tar ball; from Jeff Garzik svn:r1125 | ||
| ea4b8724 | 2009-02-02 19:22:13 | checkpoint work on big bufferevent refactoring svn:r1095 | ||
| 39c8dbe0 | 2009-01-29 20:07:59 | Make ht-internal.h get distributed. svn:r1072 | ||
| a077fb8c | 2009-01-22 02:47:35 | rename sys/signal.h to signal.h; configure m4 macro dir; this assist with compilation on Haiku svn:r1033 | ||
| 309fc7c4 | 2009-01-21 07:51:25 | New functions to provide sane threading callbacks with pthreads and win32 threading implementations. svn:r1031 | ||
| 169321c9 | 2009-01-13 20:26:37 | Rename four internal headers to follow the -internal.h convention. svn:r1000 | ||
| fbd5e820 | 2009-01-13 19:20:22 | Stop linking backends into libevent_extra.la svn:r997 | ||
| 55490942 | 2009-01-13 19:20:14 | Move internal headers into noinst_HEADERS automake target where they belong. svn:r996 | ||
| 5ebd23ad | 2009-01-13 19:19:50 | New EVUTIL_ERR_*_RETRIABLE macros to tell if an errno blocked or failed. svn:r994 | ||
| 1df57d2b | 2009-01-12 20:36:24 | Move strlcpy.c into libevent-core, so that code built against libevent-core on platforms without strlcpy can link. svn:r991 | ||
| 980bcd68 | 2009-01-02 21:21:58 | Work better with platforms that do not have ipv6 structures, or that do not have sin_len fields, etc. svn:r986 | ||
| 02b2b4d1 | 2008-12-23 16:37:01 | Restructure the event backends so that they do not need to keep track of events themselves, as a side effect multiple events can use the same fd or signal. svn:r972 | ||
| a26442c5 | 2008-05-08 14:06:33 | r19649@catbus: nickm | 2008-05-08 10:00:14 -0400 Replace gettimeofday() usage with a new evutil_gettimeofday(). This removes all previous need for win32-code/misc.[ch] svn:r792 | ||
| 36d7ab50 | 2008-05-04 18:31:21 | trust in naming: rename evbuffer.c to bufferevent.c svn:r767 | ||
| 682adc44 | 2008-04-30 00:09:16 | support input/output filters for bufferevents svn:r748 | ||
| 558de9b3 | 2008-03-02 21:18:33 | Provide OpenSSL style support for multiple threads accessing the same event_base svn:r684 | ||
| 5c70ea4c | 2008-02-28 02:47:43 | improved code for evbuffer; avoids memcpy svn:r674 | ||
| 0d26f160 | 2008-02-18 20:13:27 | r18169@catbus: nickm | 2008-02-18 15:13:20 -0500 Rebuild and re-run configure etc when configure.in or Makefile.am changes. Also, have automake do its dependency tracking. svn:r651 | ||
| 127888bd | 2007-12-20 22:20:06 | r17291@catbus: nickm | 2007-12-20 17:19:55 -0500 Add tree.h to distributed files in trunk. svn:r607 | ||
| 9cc67e5f | 2007-12-06 19:35:55 | Compile regression tests by default even on win32. svn:r578 | ||
| 7eb250e9 | 2007-11-25 17:14:19 | r14939@tombo: nickm | 2007-11-25 11:59:26 -0500 New function event_set_mem_functions to replace internal calls to malloc, free, etc with a user-supplied functions. svn:r541 | ||
| d1e03054 | 2007-11-12 07:34:29 | clean up event-config.h to fix make distcheck; from sourceforge tracker svn:r521 | ||
| 7add3d36 | 2007-11-12 02:44:02 | stick autogen.sh into EXTRA_DIST svn:r515 | ||
| df667b96 | 2007-11-12 02:32:35 | we no longer need acconfig.h svn:r510 | ||
| f74e7258 | 2007-11-07 06:01:57 | r16501@catbus: nickm | 2007-11-07 01:00:31 -0500 This is one of those patches which will either make matters far simpler after the bugs shake out, or will get reverted pretty quick once we realize that it is a stupid idea. We now post-process the config.h file into a new event-config.h file, whose macros are prefixed with _EVENT_ and which is thus safe for headers to include. Using this, we can define replacement timeval manipulation functions in evutil.h, and use them uniformly through our code. We can also detect which headers are needful in event.h, and include them as required. This is also the perfect time to remove the long-deprecated acconfig.h file, so that autoheader no longer warns. Should resolve the following issues: [ 1826530 ] Header files should have access to autoconf output. [ 1826545 ] acconfig.h is deprecated. [ 1826564 ] On some platforms, event.h can't be included alone. svn:r492 | ||
| e9564ece | 2007-11-07 03:40:26 | r16487@catbus: nickm | 2007-11-06 22:38:44 -0500 Remove rtsig method, as discussed in July. It hasn't compiled for quite a while, and nobody has seemed to miss it much. Please let us know if this was a bad call. [Tracker issue 1826539]. svn:r485 | ||
| 4555f755 | 2007-11-07 03:25:03 | remove tree.h from EXTRA_DIST; from Charles Kerr svn:r484 | ||
| 1bcb112b | 2007-11-04 02:21:31 | r14698@tombo: nickm | 2007-11-03 22:20:23 -0400 Use libtool versioning correctly. Add comment to Makefile.am explaining how to keep this working. svn:r472 | ||
| 88173102 | 2007-11-03 23:45:38 | split libevent into two extra libraries libevent_core and libevent_extra svn:r469 | ||
| 30ae40cc | 2007-11-03 18:04:53 | switch timeouts to a min heap; from Maxim Yegorushkin svn:r467 | ||
| 25007183 | 2007-09-20 18:26:40 | r15216@catbus: nickm | 2007-09-20 13:58:23 -0400 Add a new evutil module to contain the usual cross-platform hacks: socketpair, closesocket, and make_socket_nonblocking() svn:r441 | ||
| 7f57289f | 2007-09-18 15:16:23 | r15103@catbus: nickm | 2007-09-18 11:13:09 -0400 Use a dummy target to ensure that doxygen gets rebuilt every time we "make doxygen". svn:r439 | ||
| 7135ffb6 | 2007-09-18 15:12:09 | r15096@catbus: nickm | 2007-09-18 11:02:12 -0400 Add Doxygen documentation to header files; patch from Mark Heily. svn:r436 | ||
| a36d4a93 | 2007-08-20 14:44:15 | r14699@catbus: nickm | 2007-08-20 10:42:57 -0400 Use $top_srcdir and $srcdir variables to refer to source paths in Makefile.am. This makes it possible to build libevent from a separate directory. Patch from Kelly Anderson. svn:r400 | ||
| 74f7118d | 2007-03-03 08:16:40 | install evrpc.h header svn:r342 | ||
| b5d2f9a2 | 2007-03-01 06:25:18 | rolling back r339: evconfig.h does not work svn:r341 | ||
| 127c260b | 2007-02-28 04:02:29 | make evconfig.h available as installed header file; not really ideal but good enough for me; from Nick Mathewson svn:r339 | ||
| 73987902 | 2007-02-15 22:46:04 | missing reference to strlcpy-internal svn:r330 | ||
| 0db257b8 | 2007-01-03 07:11:17 | rename strlcpy so that it does not conflict with other tests; from Nick Mathewson. svn:r306 | ||
| f554234f | 2006-11-16 07:36:20 | first stab at an rpc layer; this breaks the regression test. svn:r254 | ||
| 152f5700 | 2006-10-09 01:55:23 | install evdns.3 man page svn:r240 | ||
| 9f7d28bb | 2006-09-27 03:07:38 | make it compile with mingw; from Nick svn:r235 | ||
| e80e52ce | 2006-08-27 19:43:00 | include evdns.h header - fix windows distribution files svn:r229 | ||
| d0d8f9b4 | 2006-08-13 06:59:37 | configure evdns and make it compile svn:r225 | ||
| 4596f82e | 2006-08-11 15:20:10 | windows makefile fixes from branch svn:r222 | ||
| 00bc7e37 | 2006-07-15 02:55:57 | 1.2-rc1; Solaris' event port support from Dave Pacheco svn:r216 | ||
| 6813af3f | 2006-06-10 22:37:21 | move http related prototypes to evhttp.h svn:r214 | ||
| 147b71e3 | 2006-06-10 22:28:21 | rename http.h to http-internal.h - i wish there were decent refactoring tools for open source programmers. svn:r213 | ||
| a3bb4a03 | 2006-01-22 05:08:50 | I often need some very simple HTTP functionality, so this is a first stab at integrating something really simple with HTTP. The interface is still evolving as I start messing with it. Not all the interfaces are properly exported yet. I am also trying to figure out how to intelligently hide the details about the different structures from users, so that that things can be changed around later. svn:r196 | ||
| c4e60994 | 2005-08-22 01:34:34 | including the tagging code that is required by event_rpcgen.py; test the new functionality. svn:r172 | ||
| e444040f | 2005-04-29 02:55:20 | fix rule that depended on obsolete libevent.a svn:r159 | ||
| fdfa743c | 2005-04-23 02:48:49 | libtoolize; from Nick Mathewson svn:r153 | ||
| fbdaf3ab | 2005-03-29 07:03:10 | debugging callbacks from Nick Mathewson <nickm@freehaven.net> svn:r136 | ||
| d9cf6fe2 | 2004-12-05 22:16:35 | version 1.0 svn:r127 | ||
| f5a62ed3 | 2004-12-01 19:59:00 | make a separate verify target svn:r124 | ||
| 06aaa92f | 2004-07-30 04:57:21 | devpoll support svn:r113 |