|
369aafc4
|
2009-10-27T04:03:58
|
|
Refactor kq_init error handling.
svn:r1467
|
|
ed0e91e0
|
2009-10-27T04:03:50
|
|
New test flag to suppress logging for one test.
svn:r1466
|
|
7f10fac3
|
2009-10-26T20:07:06
|
|
Note assert-related change in changelog
svn:r1465
|
|
2e36dbe1
|
2009-10-26T20:00:43
|
|
Use EVUTIL_ASSERT() consistently instead of assert.
svn:r1464
|
|
37c3456d
|
2009-10-26T20:00:08
|
|
Add an EVUTIL_ASSERT() to replace our calls to assert().
The big difference here is that EVUTIL_ASSERT() passes its message on
via event_errx() before aborting, so that the application has a prayer
of noticing and recording it.
svn:r1463
|
|
a8267663
|
2009-10-26T19:59:51
|
|
API to replace all calls to exit() with a user-supplied fatal-error handler.
Also, add unit tests for logging.
svn:r1462
|
|
38aec9ec
|
2009-10-23T22:38:35
|
|
Tweaks to IOCP interface.
svn:r1461
|
|
7b107249
|
2009-10-23T22:07:05
|
|
Fix my fix for the bufferevent_connect_fail() test.
svn:r1460
|
|
879420a7
|
2009-10-23T22:00:29
|
|
Expose a narrow window to the IOCP code.
svn:r1459
|
|
c119e4a1
|
2009-10-23T17:40:00
|
|
Improve the behavior of le-proxy in a few cases.
svn:r1458
|
|
fdd11c00
|
2009-10-21T19:21:05
|
|
Make the bufferevent_connect_fail test faster on OSX.
It seems that connecting to a listener that is bound but not accepting
or listening doesn't give a 'connection refused' error on OSX, but
rather makes the connect() time out after 75 seconds. I couldn't find
any way to make the timout shorter. Fortunately, closing the listener
after a second or so makes the desired error occur after another
second or so.
svn:r1457
|
|
b73ad7bc
|
2009-10-21T18:48:22
|
|
Treat the bitwise OR of two enum values as an int.
This makes our interfaces usable from C++, which doesn't believe
you can say "bufferevent_socket_nase(base, -1,
BEV_OPT_CLOSE_ON_FREE|BEV_OPT_DEFER_CALLBACKS)" but which instead
would demand "static_cast<bufferevent_options>(BEV_OPT_CLOSE_ON_FREE|
BEV_OPT_DEFER_CALLBACKS))" for the last argument.
Diagnosis and patch from Chris Davis.
svn:r1456
|
|
4fbac2a5
|
2009-10-21T07:00:19
|
|
Test failing case of bufferevent_connect().
Code by Chris Davis.
svn:r1455
|
|
d8164d0c
|
2009-10-21T07:00:14
|
|
Fix win32 connect() event handling.
Christopher Davis reported:
Connection failures aren't reported on Windows when
using bufferevent_socket_connect, because Windows uses
select's exceptfds to notify of failure, and libevent
treats them like read events. Only the write event
handler is currently used to handle connection events.
We should think hard about this one, since it changes
behavior from 1.4.x. Anything that worked on Mac/Unix before
will work more consistently on Windows now... but this might
break stuff that worked only on Windows, but nowhere else.
Patch from Chris Davis.
svn:r1454
|
|
b89b58b5
|
2009-10-21T06:03:00
|
|
OSX compilation issues
svn:r1453
|
|
c9c4ec26
|
2009-10-21T05:36:27
|
|
Remove an EVBASE_RELEASE_LOCK that I missed.
svn:r1452
|
|
ed748a48
|
2009-10-21T04:45:59
|
|
Fix win32 compilation.
svn:r1451
|
|
6b22e74a
|
2009-10-21T03:54:00
|
|
Add locking to event_base_loop.
This is harder than it sounds, since we need to make sure to
release the lock around the key call to the kernel (e.g.,
select, epoll_wait, kevent), AND we need to make sure that
none of the fields that are used in that call are touched by
anything that might be running concurrently in another
thread. I managed to do this pretty well for everything but
poll(). With poll, I needed to introduce a copy of the
event_set structure.
This patch also fixes a bug in win32.c where we called
realloc() instead of mm_realloc().
svn:r1450
|
|
50825466
|
2009-10-21T02:14:16
|
|
Fix windows compilation warnings.
svn:r1449
|
|
e1c9b84a
|
2009-10-19T16:20:12
|
|
Fix compilation for listener.h for C++ - missing extern "C". Patch from Ferenc Szalai.
svn:r1448
|
|
b812563a
|
2009-10-16T13:20:16
|
|
Add a note that we should change previous_to_last to last_with_space
svn:r1447
|
|
f3dee9e8
|
2009-10-16T13:20:09
|
|
Correct the signatures for the evmap_io_* functions to use evutil_socket_t.
svn:r1446
|
|
e3fd294a
|
2009-10-16T13:19:57
|
|
Spelling fixes in comments and strings.
svn:r1445
|
|
25af6954
|
2009-10-14T00:46:47
|
|
When a bufferevent_connect() call fails, give the client an error callback.
Patch from Christopher Davis.
svn:r1444
|
|
fc83ca3c
|
2009-10-14T00:46:40
|
|
Fix some crash bugs when initializing evdns
svn:r1443
|
|
e6b747c3
|
2009-10-12T21:06:30
|
|
Declare struct timezone in util.h so that borken mingw versions do not complain
svn:r1441
|
|
633f3fb7
|
2009-10-02T03:07:29
|
|
Add changelog for last commit
svn:r1440
|
|
ba8a1771
|
2009-10-02T03:03:58
|
|
Do not notify the main thread more than needed.
Basically, we suppress the notification when an event is added or deleted
and:
- The event has no fd, or there is no change in whether we are
reading/writing on the event's fd.
- The event has no timeout, or adding the event did not make the earliest
timeout become earlier.
This should be a big efficiency win in applications with multiple threads and
lots of timeouts.
svn:r1439
|
|
d5b640fc
|
2009-10-01T15:29:08
|
|
Apply Ka-Hing Cheung's event_base_got_[break|exit] patch, with locking and whitespace fixes.
svn:r1438
|
|
8e8d94a3
|
2009-09-24T22:18:19
|
|
Do not drop data from evbuffer when out of memory; reported by Jacek Masiulaniec
svn:r1436
|
|
18fe4008
|
2009-09-23T23:51:26
|
|
Forward-port: fix android compilation
svn:r1435
|
|
2622e5ac
|
2009-09-16T17:17:57
|
|
Fix the assert I added to epoll.c: spotted by Dmitry Novikov
svn:r1432
|
|
c2ead9f1
|
2009-09-11T21:02:19
|
|
Treat events with fd == -1 as addable.
This turns out to simplify a fair bit of logic, including the bufferevent
code, and should fix bug 2850656.
svn:r1431
|
|
85255a63
|
2009-09-11T18:47:35
|
|
Make epoll use less RAM.
We do this by not allocating the maximum epoll_event array for the epoll
backend at startup. Instead, we start out accepting 32 events at a time, and
double the array's size when it seems that the OS is generating events faster
than we're requesting them. This saves up to 374K per epoll-based
event_base. Resolves bug 2839240.
svn:r1428
|
|
e3f89fa2
|
2009-09-11T18:21:57
|
|
Add a trivial race-fix from Chromium: do not try to re-detect whether we have a monotonic clock every time we make a new event_base.
svn:r1427
|
|
3b461a6d
|
2009-09-11T18:21:37
|
|
Treat a negative number of bytes to read as the kernel saying "I don't know."
svn:r1426
|
|
f65b8b09
|
2009-08-19T20:55:25
|
|
On connect, call only one of BEV_EVENT_CONNECTED or writecb.
Previously, if we had a socket bufferevent in connect state, we'd send
both of these to indicate that the connection was done. That was broken
since the point of adding BEV_EVENT_CONNECTED was so that we could
distinguish "we're connected" and "we wrote something".
Now, writecb is called only when
A) the connection finished but the user never put the socket into a
"connecting" state, or
B) data was actually written.
svn:r1425
|
|
2c1b0e44
|
2009-08-16T19:22:15
|
|
Fix build warnings and add changelog entry for evhttp patches.
svn:r1424
|
|
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
|