|
c8b0fe4a
|
2009-08-16T19:22:10
|
|
Define evhttp_del_accept_socket
[Patch from David Reiss]
svn:r1423
|
|
6c53334c
|
2009-08-16T19:22:04
|
|
Define evhttp_{bind,accept}_socket_with_handle
[Patch from David Reiss]
svn:r1422
|
|
4bcd5646
|
2009-08-16T19:21:57
|
|
Make evhttp_bound_socket visible, and provide an accessor to its fd
Declare the previously private struct evhttp_bound_socket in
event2/http.h as an opaque struct.
Implement evhttp_bound_socket_get_fd, which returns the file descriptor
of an evhttp_bound_socket.
[Patch from David Reiss]
svn:r1421
|
|
0755833e
|
2009-08-16T19:21:50
|
|
Minor documentation fixes
[Patch from David Reiss]
svn:r1420
|
|
22bd5b42
|
2009-08-16T16:40:42
|
|
Support sendfile on solaris: patch from Caitlin Mercer.
svn:r1419
|
|
f2282398
|
2009-08-14T20:07:35
|
|
New function to put an SSL bufferevent into a renegotiating state.
svn:r1418
|
|
46a61869
|
2009-08-14T20:07:17
|
|
Disable whichever struct event we don't want during ssl handshaking.
svn:r1417
|
|
58b0708e
|
2009-08-14T20:07:09
|
|
Only send a connected event _after_ we've adjusted the SSL state.
This is important if the callback adjusts it to something else.
svn:r1416
|
|
d17c720c
|
2009-08-14T20:07:01
|
|
Remove an extraneous puts().
svn:r1415
|
|
eff09a29
|
2009-08-14T20:06:48
|
|
tab/whitespace fixes in bufferevent_sock.c
Also note that write() doesn't usually say 0.
svn:r1414
|
|
bd26bace
|
2009-08-11T19:47:46
|
|
When running with deferred callbacks, always send the "connected" event
before any read/write events, and send timeout/error/eof events after.
svn:r1413
|
|
7a55c48d
|
2009-08-09T20:18:00
|
|
Add a few missing changelog entries
svn:r1412
|
|
800f9aa6
|
2009-08-09T20:17:29
|
|
When bufferevent_socket_connect is called with no address, assume that our existing fd is connecting and put the connection into "connecting" mode.
svn:r1411
|
|
8a99083f
|
2009-08-07T17:16:52
|
|
Add an evbuffer_search_range() to search a bounded range of a buffer
This can be handy when you have one search to find the end of a header
section, and then you want to find a substring within the header
section without looking at the body.
svn:r1410
|
|
0c09fe5a
|
2009-08-03T20:50:56
|
|
Add a couple more evdns tests. Libevent is now, for me, at 80.02% coverage.
svn:r1409
|
|
94e8f9b9
|
2009-08-03T20:15:45
|
|
Another DNS unit tests, to handle reissues.
The evdns module is now up to ~72% coverage; Libevent is up to nearly 80%.
svn:r1408
|
|
dc1f5b1e
|
2009-08-03T20:15:39
|
|
why say fprintf(stdout, X) when you can say printf?
svn:r1407
|
|
213dc2a2
|
2009-08-03T20:15:32
|
|
Fix an annoying evdns crash bug, and add more unit tests for evdns.
svn:r1406
|
|
a5006d80
|
2009-08-03T16:15:57
|
|
Unit tests for DNS search.
svn:r1405
|
|
d4134772
|
2009-07-31T17:35:42
|
|
Refactor evbuffer_readln() into a search-for-eol function and an extract-line function.
svn:r1404
|
|
a26d2d1b
|
2009-07-31T17:34:47
|
|
Refactor evbuffer_readln to use evbuffer_ptr; remove old evbuffer_iterator.
svn:r1403
|
|
6dc488bd
|
2009-07-31T17:34:18
|
|
Improved coverage for evbuffer_readln()
svn:r1402
|
|
7c688dd9
|
2009-07-31T14:41:45
|
|
New function to expose bufferevent.enabled
svn:r1401
|
|
621aafd2
|
2009-07-30T22:11:23
|
|
Export sockaddr comparison functionality.
svn:r1400
|
|
cf54d74a
|
2009-07-30T20:41:41
|
|
More unit tests for Openssl, including initializing with no socket. Up to 75% coverage.
svn:r1399
|
|
d1a2254b
|
2009-07-30T20:41:31
|
|
Fix some bugs in bufferevent_socket_connect
svn:r1398
|
|
7a2a51a3
|
2009-07-30T20:41:21
|
|
Add unit tests for SSL session renegotiation.
This tickles the write-blocked-on-read code, and in this case turned
up a bug in it.
svn:r1397
|
|
595f7e38
|
2009-07-30T20:41:12
|
|
Always retry SSL_write() with the same number you told it last time.
svn:r1396
|
|
eecefc50
|
2009-07-30T20:41:00
|
|
Add a function to extract the SSL object from a bufferevent_openssl.
svn:r1395
|
|
d5a3f1f1
|
2009-07-30T20:40:50
|
|
Set the SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER flag, and explain why.
svn:r1394
|
|
44715517
|
2009-07-30T20:40:40
|
|
Use SSL_do_handshake in place of SSL_connect/SSL_accept
svn:r1393
|
|
8a3007ef
|
2009-07-30T17:01:38
|
|
More evconnlistener unit tests: bump its coverage from 71% to 83%.
svn:r1392
|
|
7c20a6ae
|
2009-07-30T17:01:21
|
|
Export an ev_socklen_t.
svn:r1391
|
|
75fe762e
|
2009-07-30T17:00:56
|
|
Accessor function to get a listener's associated fd
svn:r1390
|
|
62511629
|
2009-07-30T17:00:46
|
|
Add unit test for parsing addresses with bad ports.
svn:r1389
|
|
3c99c79d
|
2009-07-28T19:45:54
|
|
Changelog entry for msvc fixes.
svn:r1388
|
|
72ea534f
|
2009-07-28T19:41:57
|
|
Export evutil_str[n]casecmp as evutil_ascii_str[n]casecmp.
svn:r1387
|
|
a826a758
|
2009-07-28T19:41:48
|
|
Some tweaks to Brodie Thesfield's MSVC patch.
svn:r1386
|
|
5b5b880b
|
2009-07-28T19:41:39
|
|
Various MSVC cleanups from Brodie Thiesfield.
svn:r1385
|
|
12199fa7
|
2009-07-28T17:11:03
|
|
Fix segfault during failed allocatino of locked evdns base.
We need to comb the rest of the code to make sure that we don't blindly wrap
functions in LOCK(x), UNLOCK(x) when those functions might contain a FREE(x)
in the middle.
Rocco Carbone found and reported this bug.
svn:r1384
|
|
f8b527e6
|
2009-07-28T05:09:06
|
|
Fix a dumb bug where we would allocate too little memory in event_get_supported_methods().
svn:r1383
|
|
709c21c4
|
2009-07-28T04: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
|
|
b06b2649
|
2009-07-26T01:29:39
|
|
Make "deferred callback queue" independent of event_base.
This way, we can more easily have an IOCP bufferevent implementation
that does not need an event_base at all. Woot.
svn:r1381
|
|
8cc68835
|
2009-07-25T03:35:32
|
|
Fix the main/methods unit test to pass from "make verify".
The problem was introduced when we changed the semantics of
get_supported_methods() to reflect all the methods that exist.
Previously, it had not returned methods disabled from the environment,
but the test didn't know that.
svn:r1379
|
|
6fbeb923
|
2009-07-25T03:23:46
|
|
call it 2.0.2-alpha
svn:r1378
|
|
8eb155a1
|
2009-07-23T14:48:24
|
|
Fix build on platforms (like Solaris 10, reportedly) which lack a MAP_FILE.
svn:r1375
|
|
49de08ef
|
2009-07-21T19:20:44
|
|
Push coverage of event.c a little higher
svn:r1373
|
|
59e8e959
|
2009-07-21T19:20:25
|
|
Add clarifying "static" to definitions of fns in event.c
svn:r1372
|
|
670658eb
|
2009-07-21T18:32:57
|
|
Correct the signatures for evdns_configure_windows_nameservers(), now that it is exposed.
svn:r1369
|
|
f4775918
|
2009-07-20T14:55:51
|
|
Refactor evtag tests into their own suite.
svn:r1366
|
|
e8400a43
|
2009-07-20T14:55:35
|
|
Rename encode_int(64) to avoid polluting the global namespace.
They're now called evtag_encode_int(64). The old names are available
as macros in event2/tag_compat.h.
Also, add unit tests for encode/decode_int64.
svn:r1365
|
|
dc031990
|
2009-07-20T14:55:07
|
|
Add strcasecmp tests to improve evutil coverage a bit
svn:r1364
|
|
1fb2e818
|
2009-07-17T21:47:45
|
|
Use a uniform strategy when a function is not working: do not expose
it.
Rather than failing at runtime, it is better to fail at compile or
link time.
svn:r1363
|
|
9cf4ee7e
|
2009-07-17T21:47:35
|
|
Fix a simple warning
svn:r1362
|
|
d3bef1a1
|
2009-07-17T20:32:25
|
|
Finish implementing new convention that whenever an optional function is declared, a corresponding macro is defined.
svn:r1361
|
|
a386fde3
|
2009-07-17T20:28:03
|
|
Checking for MS_WINDOWS rather than WIN32 is a Tor-ism. Fix that!
svn:r1360
|
|
c02b305a
|
2009-07-17T20:23:12
|
|
Trivial tests to exercise deferred and locking bufferevent code.
These are done as variations of test_bufferevent_connect, since that
one exercises event callbacks as well as read/write callbacks.
The coverage for bufferevent.c is now up to about 87%, from about 70%.
svn:r1358
|
|
61f2a45d
|
2009-07-17T20:23:05
|
|
Add a tinytest flag to initialize threading.
svn:r1357
|
|
4ba6eda4
|
2009-07-17T20:22:56
|
|
Make evthread_use_pthreads() actually return 0 on success.
svn:r1356
|
|
ed038295
|
2009-07-17T20:22:48
|
|
Define a macro to indicate that we have defined one of the optional evthread_use macros
svn:r1355
|
|
69601fc2
|
2009-07-17T18:59:22
|
|
Update event_tv when time jumps backwards, so that we only note each jump once. Fix for 1939984
svn:r1353
|
|
9c2ecba7
|
2009-07-17T18:42:12
|
|
Oops. -1 is an integer, not a pointer.
svn:r1352
|
|
d6f2e199
|
2009-07-17T18:38:46
|
|
Unit tests for bufferevent_get(fd|_underlying)
svn:r1351
|
|
5d71b25b
|
2009-07-17T18:38:38
|
|
Remove all trailing whitespace from end-of-line.
svn:r1350
|
|
d4e3671f
|
2009-07-17T18:38:21
|
|
Add a test to free_active_base to free a base with an active event.
svn:r1349
|
|
638116ca
|
2009-07-17T18:38:14
|
|
Add a check for event_add failure to evthread_make_base_notifiable()
svn:r1348
|
|
a62283a9
|
2009-07-17T17:46:17
|
|
Always hold a reference to a bufferevent when calling its callbacks.
Rationale: we hold a lock on the bufferevent when its callbacks are
executing, so we need to release the lock afterwards. But the
callback might free the bufferevent, so unless we're holding a
reference on the bufferevent, the lock might not be there for us to
release.
svn:r1347
|
|
e83a32df
|
2009-07-14T19:31:20
|
|
Do not define _FORTIFY_SOURCE if the platform GCC already defined it for us.
svn:r1346
|
|
9fcd84d1
|
2009-07-14T19:19:45
|
|
Include disabled methods in event_get_supported_methods() output.
Previously, events that were disabled using EVENT_NO* were left out of
event_get_supported_methods(). This was wrong, broke unit tests
(under some circumstances) and left the user with no good way to tell
which methods were actually compiled in.
Fixes bug 2821015.
svn:r1344
|
|
043515bc
|
2009-07-14T18:50:06
|
|
Stop using C++ style comments.
svn:r1343
|
|
e224321c
|
2009-07-14T18:49:42
|
|
Convert and expand free_active_base/event_base_new tests to avoid dbl-free. Patch from Zack Weinberg
svn:r1342
|
|
6b4b77a2
|
2009-07-14T16:54:48
|
|
Make event_del(E) block while E is running in another thread.
This gives you the property that once you have called event_del(E),
you know that E is no longer running or pending or active at all, and
so it is safe to delete the resource used by E's callback.
svn:r1341
|
|
d866f055
|
2009-07-13T20:03:00
|
|
Patch from Zack Weinberg: normalize perror() tt functions and add tt_fail/tt_abort_printf
svn:r1340
|
|
0cc10e41
|
2009-07-13T20: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
|
|
d3a8ccb8
|
2009-07-10T19:38:16
|
|
Change use of AC_CHECK_LIB to AC_SEARCH_LIBS.
Patch from Zack Weinberg. His message:
This one eliminates all use of AC_CHECK_LIB in the configure script.
AC_CHECK_LIB has a serious flaw: if the library you mention *exists*
but is not *necessary* for the function you want, it adds it to
$(LIBS) anyway. This was fine in the days of static libraries,
because the linker would ignore an .a library that didn't contain
anything you needed. However, ELF shared libraries are different
(let's not get into why): the linker will by default record a
DT_NEEDED entry for every shared object mentioned on the link
command line. Thus, every use of AC_CHECK_LIB is a potential
unnecessary DT_NEEDED, making extra work for the dynamic loader. The
cure is simply to use AC_SEARCH_LIBS instead; it first tries to find
the function you ask for in libc, and only if that doesn't work does
it try to use the extra library you mention.
For the same reasons, pkg-config .pc files should distinguish
between the libraries to use for shared linkage (Libs:) and the
additional libraries needed for static linkage (Libs.private:). I
have also made that correction in this patch. I also took the
opportunity to clean up the substitution variables a little and make
absolutely sure that the core library does not get linked against
zlib.
svn:r1338
|
|
a501d683
|
2009-07-10T19:34:00
|
|
Add a lock/unlock pair inside the event callbacks in bufferevents.
This fixes part of bug 2800642, I believe, though there is still a
general race condition in multithreaded use of events that we need to
think about.
svn:r1337
|
|
6469598e
|
2009-07-03T17:43:26
|
|
Allow C identifiers as struct names; allow multiple comments in .rpc files; from Zack Weinberg; plus a tiny tweak
svn:r1336
|
|
fbb181d1
|
2009-07-03T17:31:17
|
|
Allow specifying the output filename for rpcgen; based on work by jmansion; patch from Zack Weinberg.
svn:r1335
|
|
bbcc54ef
|
2009-07-03T17:25:45
|
|
fix preamble of rpcgen-generated files to rely on event2 includes; based on work by jmansion; patch from Zack Weinberg.
svn:r1334
|
|
37d3e16c
|
2009-07-03T17:20:56
|
|
Raise RpcGenError in event_rpcgen.py; from jmanison and Zack Weinberg
svn:r1333
|
|
342ad355
|
2009-06-30T14:23:18
|
|
The truncated bit is in the 3rd byte of a dns reply, not the 4th. [fwd-port]
svn:r1332
|
|
5aefb8a6
|
2009-06-25T15:22:36
|
|
Fix type on freebsd sendfile. Patch from navin seshadri. Fixes bug 2811991
svn:r1330
|
|
f901f986
|
2009-06-24T22:40:15
|
|
When our IP address changes, do not break all existing dns server sockets. Patch from Christopher Davis
svn:r1329
|
|
01be8708
|
2009-06-11T19:09:08
|
|
Fix compile on cygwin. This isnt the solution I would like: I would prefer to get pton and ntop to work even when AF_INET6 is not defined.
svn:r1326
|
|
bbd14de0
|
2009-06-11T17:55:08
|
|
Add sometimes-needed header to regress_bufferevent.c
svn:r1325
|
|
d1ffba1d
|
2009-06-05T19:52:13
|
|
Replace some read/write instances with send/recv to work properly on win32.
svn:r1324
|
|
a43a1c2b
|
2009-05-28T20:44:04
|
|
Fix compilation problems in win32.c
svn:r1322
|
|
eb97bb76
|
2009-05-28T15:58:28
|
|
Make the headers compile happily with pedantic C compilers.
Original message from SF patch 2797966:
While commas at the end of enumerator lists are valid in c99, they
are not valid +in c89 nor in c++. When using gcc/g++ with the
-pedantic flag, users will +receive a warning (gcc) or an
error(g++) when including the event2/event.h and
+event2/bufferevent.h. The errors look something like
event2/event.h:159: error: comma at end of enumerator list
Patch from Akita Noek on Sourceforge.
svn:r1321
|
|
0b4ab122
|
2009-05-28T15:47:15
|
|
Spell-check the the headers
svn:r1320
|
|
3f0e4928
|
2009-05-27T23:48:59
|
|
small doc fix.
svn:r1319
|
|
cdaca02c
|
2009-05-27T15:35:00
|
|
Activate fd events in a pseudorandom order on older backends.
New backends like poll and kqueue and so on add fds to the queue in
the order that they are triggered. But the select backend currently
activates low-numbered fds first, whereas the poll and win32 backends
currently favor whatever fds have been on for the longest. This is no
good for fairness.
svn:r1318
|
|
11a178f2
|
2009-05-25T23:11:31
|
|
Defer EOF on paired bufferevent correctly.
svn:r1317
|
|
5232cfa3
|
2009-05-25T23:11:20
|
|
Consistently say "eventcb" instead of "errorcb"
svn:r1316
|
|
2f655f00
|
2009-05-25T23:10:47
|
|
Add documentation for bufferevent-internal.h stuff
svn:r1315
|
|
34574db0
|
2009-05-25T23:10:23
|
|
Add a generic mechanism to implement timeouts in bufferevents.
Paired and asynchronous bufferevents didn't do timeouts, and filtering
bufferevents gave them funny semantics. Now they all should all work
in a way consistent with what socket bufferevents do now: a [read/write]
timeout triggers if [reading/writing] is enabled, and if the timeout is
set, and the right amount of time passes without any data getting
[added to the input buffer/drained from the output buffer].
svn:r1314
|
|
49f18a0a
|
2009-05-25T20:02:51
|
|
Add requirement in configure.in for autoconf 2.59c. Needed for ssize_t test. Spotted by Yang Hong.
svn:r1313
|
|
dfe321e1
|
2009-05-22T20:11:29
|
|
Add missing windows include in time-test.c
svn:r1311
|
|
e8343e9f
|
2009-05-22T19:11:59
|
|
work around missing __func__ in sample code
svn:r1310
|
|
0b22ca19
|
2009-05-22T19:11:48
|
|
Use ev_ssize_t in place of ssize_t *everywhere*.
svn:r1309
|
|
7289d7f8
|
2009-05-22T18:20:59
|
|
Fix a potentially very annoying evdns bug that we found in Tor.
Generally speaking, it way better to event_assign() an event when you
allocate it than to assign it before every time you event_add it: if
it is already event_add()ed, the assign will mess it up so that it
doesn't _look_ added, and event_add() will insert a second copy.
Later, event_del() will only delete the second copy. Eventually, the
event_base will have a dangling pointer to freed memory. Ouch!
svn:r1307
|