|
95e2455c
|
2012-01-24T16:08:00
|
|
When including an -internal.h header outside the main tree, do so early
Some of our unit tests and sample code need functions and structures
defined in an -internal.h header. But that can freak out OpenSolaris,
where stdio.h wants to define _FILE_OFFSET_BITS unless it's already
defined, and then evconfig-internal.h defines it. Regular users
should never ever use our -internal.h headers, so the solution is
to make sure that if we're going to use them ourselves, we do so
before system headers.
|
|
b9f7e5fd
|
2012-01-24T15:58:11
|
|
Allow more slop in deferred_cb_skew test; freebsd needs it
|
|
ea30a435
|
2012-01-24T15:30:51
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
3aa0e8a9
|
2012-01-24T15:30:31
|
|
Remove a couple of now-unused variables
|
|
438d4ff2
|
2012-01-24T15:29:39
|
|
Make event_base integrity check work on windows
|
|
edc6d7d7
|
2012-01-24T15:09:04
|
|
Start writing a changelog for 2.0.17-stable
|
|
b77b43fc
|
2012-01-24T14:59:37
|
|
Use test_timeval_diff_eq more consistently
|
|
67a1763b
|
2012-01-24T14:33:10
|
|
Make regression tests run over 3x faster.
This was mainly a matter of reducing timeouts and delays, paying
special attention to every test that took longer than a second to
finish.
We could do better here; IMO anything over .7 sec is probably too
long, but it's a big win as it is.
Remember, interactive computing is a big win over batch processing:
anything that makes you get up and walk away from the terminal might
as well be making you carry your punch cards over to the mainframe.
|
|
350a3c40
|
2012-01-24T14:34:04
|
|
New evhttp function to adjust initial retry timeout
|
|
ab14f7c1
|
2012-01-24T11:45:00
|
|
Reduce the timeout in the main/fork test.
There was no reason for it to be so long, except for the lack of a usleep
|
|
f25d9d32
|
2012-01-24T11:42:26
|
|
Add an (internal) usleep function for use by unit tests
|
|
18653fca
|
2012-01-24T11:17:06
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
5408ff3b
|
2012-01-24T11:16:26
|
|
Oops:remove an accidentally committed "sleep(1)" in a unit test
|
|
10996a1a
|
2012-01-24T11:04:56
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
dab91877
|
2012-01-24T11:04:19
|
|
Workaround in the unit tests for an apparent epoll bug in Linux 3.2
|
|
fe0afabb
|
2012-01-24T10:29:31
|
|
Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
event.c
Edits required in:
evmap.c
|
|
3f18ad1b
|
2012-01-23T18:15:44
|
|
Fix a fd leak in event_reinit()
We were supposed to be closing the ev_signal_pair sockets.
|
|
6e41cdc1
|
2012-01-23T17:59:16
|
|
Fix a list corruption bug when using event_reinit() with signals present
While re-adding all the events, event_reinit() could add a signal
event, which could then cause evsig_add() to add the
base->sig.ev_signal event. Later on its merry path through
base->eventqueue, event_reinit() would find that same event and give
it to event_io_add a second time. This would make the ev_io_next
list for that fd become circular. Ouch!
|
|
3312b020
|
2012-01-23T17:43:35
|
|
Check event_base correctness at end of each unit test
|
|
40a3c52d
|
2012-01-22T22:27:16
|
|
Fix compilation of windows evutil_check_ifaddrs
|
|
27737d55
|
2012-01-21T12:55:15
|
|
Add function to check referential integrity of an event_base
|
|
5683e2b1
|
2012-01-20T16:31:20
|
|
Merge remote-tracking branch 'github/linked_list'
Conflicts:
include/event2/event_struct.h
|
|
677f23cc
|
2012-01-20T11:40:39
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
790f6b3b
|
2012-01-10T18:33:58
|
|
Force strict validation of HTTP version in response.
This sometimes accepted invalid versions like 'ICY' (n = 0, major = undefined, sometimes > 1).
|
|
a86a0c04
|
2012-01-16T14:47:05
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
7206e8cd
|
2012-01-16T14:45:31
|
|
Suppress a gcc warning from ignoring fwrite return in http-sample.c
Found by Steve Snyder
|
|
26e85fcc
|
2012-01-09T16:54:19
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
cba48c7d
|
2012-01-09T16:44:53
|
|
Fix a race condition in the dns/bufferevent_connect_hostname test.
As originally written, the test would only pass if the accept()
callbacks for the evconnlistener were all invoked before the last of
the CONNECTED/ERROR callbacks for the connecting/resolving bufferevent
had its call to event_base_loopexit() complete. But this was only
accidentally true in 2.0, and might not be true at all in 2.1 where
we schedule event_base_once() callbacks more aggressively.
Found by Sebastian Hahn.
|
|
d5a3fe5f
|
2012-01-09T12:00:04
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
ecfc720a
|
2012-01-09T11:49:41
|
|
Make evconnlistener work around bug in older Linux when getting nmapped
Older Linuxes sometimes respond to some nmap probes by having accept()
return a success but with socklen 0. That can lead to confusing behavior
when you go to process the sockaddr.
|
|
f0325167
|
2012-01-09T11:33:38
|
|
Remove bogus casts of socket to int before calling ev_callback
This should make 64-bit windows act better.
Found by Mark Heily.
|
|
0586c25e
|
2011-12-14T16:28:18
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
da70fa70
|
2011-12-14T16:17:19
|
|
Backport evhttp_connection_get_bufferevent to Libevent 2.0
Backport by Arno Bakker; original implementation in 8d3a8500f4
|
|
cac02fad
|
2011-12-08T14:38:04
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
7bbf6ca7
|
2011-12-08T14:36:32
|
|
Slightly clarify evbuffer_peek documentation
|
|
c986f232
|
2011-12-08T14:30:20
|
|
Fix behavior of evbuffer_peek(buf,-1,NULL,NULL,0)
(Patch altered by nickm to not affect the behavior of
evbuffer_peek(buf,-1,NULL,vec,n_vec).)
|
|
e0f0dbf9
|
2011-12-08T14:11:30
|
|
Remove some accidentally-committed debugging code
|
|
5c7675cc
|
2011-12-08T14:05:47
|
|
whitespace fixes
|
|
de5428e7
|
2011-12-08T14:04:04
|
|
Merge remote-tracking branch 'fancycode/buffer_references'
Conflicts:
buffer.c
|
|
d4306028
|
2011-12-08T11:43:04
|
|
Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
configure.in
|
|
358c745e
|
2011-12-08T11:39:48
|
|
check for sysctl before we use it
Not all C libraries under Linux support the sysctl() func.
|
|
88a30ad8
|
2011-12-07T18:29:06
|
|
Split up extra-long AC_CHECK_FUNCS/HEADERS lines in configure.in
|
|
56c6afe2
|
2011-12-07T18:17:34
|
|
Merge branch '21_ifaddr'
|
|
7085a456
|
2011-12-07T18:16:32
|
|
Use getifaddrs to detect our interfaces if possible
The old scheme involved connected UDP sockets and getsockname(), and is
generally best avoied.
|
|
a8e5e2fc
|
2011-12-07T21:06:10
|
|
Changed use of refcounts to make sure referenced chains are freed in all cases.
|
|
27e22255
|
2011-12-07T13:04:35
|
|
Add evbuffer_copyout_from to copy data from the middle of a buffer
You could previously do this with evbuffer_peek() and some memcpys,
but it was a bit more work than most folks wanted to get into.
Closes sourceforge ticket 3108072
|
|
35c5c955
|
2011-12-07T11:49:52
|
|
Bypass event_add when using event_base_once() for a 0-sec timeout
Some people use event_base_once(EV_TIMEOUT) to make a callback get
called "immediately". But this is pretty roundabout: it uses the
timeout heap to immediately put the event onto the active queue, when
it could just use event_active. Additionally, it can lead to
surprising re-ordering behavior.
This patch changes event_base_once so it bypasses event_add() and
called event_active() directly on a pure-timeout event with an empty
timeout.
|
|
748a0d27
|
2011-12-06T13:38:40
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
19277763
|
2011-12-06T13:35:54
|
|
Fix a silly compilation error with the sun compiler
Apparently, other compilers were allowing "return free(x)" in a
function returning void.
|
|
9ce5053d
|
2011-12-06T11:02:12
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
11f36a5f
|
2011-12-05T15:02:27
|
|
Be absolutely sure to clear pncalls before leaving event_signal_closure
I thought we'd fixed the cases where this could come up, but
apparently having an event_base_break() happen while processing
signal events could get us in trouble.
Found by Remi Gacogne. Sourceforge issue 3451433 .
|
|
da45aa74
|
2011-12-02T01:48:14
|
|
fix windows compilation issues with new file segment code
Found by Linus Nordberg
|
|
f3b89dec
|
2011-11-24T12:31:50
|
|
Fix two issues in the allow_dirty_shutdown code.
First, it shouldn't crash when it's passed a non-ssl bufferevent.
Second, it should behave correctly when it gets a true argument
other than 1.
|
|
a44cd2b0
|
2011-11-24T12:24:38
|
|
Tweak allow_dirty_shutdown documentation
|
|
099d27df
|
2011-11-21T19:57:19
|
|
Allow users to set allow_dirty_shutdown
|
|
f7eb69ac
|
2011-11-21T19:24:50
|
|
bev_ssl: Be more specific in event callbacks. evhttp in particular gets confused without at least one of BEV_EVENT_{READING|WRITING}.
|
|
3596a31d
|
2011-11-18T15:35:33
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
ba4d6696
|
2011-11-18T15:34:37
|
|
Increment version to 2.0.16-stable-dev
|
|
5de3fa32
|
2011-11-18T15:27:06
|
|
Increment version to 2.0.16-stable
|
|
044c41de
|
2011-11-18T15:16:11
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
31c99bd2
|
2011-11-18T15:14:50
|
|
Revise 2.0.16-stable changelog
|
|
9ee9e943
|
2011-11-18T14:23:13
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
ebf82199
|
2011-11-17T17:42:45
|
|
add comment to new consider_reading code
|
|
2aa036fa
|
2011-11-17T11:59:41
|
|
Avoid spinning on OpenSSL reads
Previously, if some sender were generating data to read on an
OpenSSL connection as fast as we could process it, we could easily
wind up looping on an openssl do_read operation without ever
considering other sockets.
The difference between this and the original method in
consider_reading() is that it only loops for a single completed
*frame* instead of looping until fd is drained or an error condition
was triggered.
{Patch split out by nickm}
|
|
96c562fa
|
2011-11-17T11:54:07
|
|
Move SSL rate-limit enforcement into bytes_to_read()
|
|
a186e732
|
2011-11-17T11:45:49
|
|
Refactor amount-to-read calculations in buffervent_ssl consider_reading()
Split up consider_reading()'s conditional checks into another function
can_read() for simplicity sake.
{Split into a separate patch by nickm}
|
|
6660c9a3
|
2011-11-15T18:34:24
|
|
Revert "Avoid potential SSL read spinlocks"
This reverts commit fc52dbac87f4937f8306759506d6a2ad15ca244c.
|
|
a62346de
|
2011-11-15T18:33:50
|
|
Revert "openssl bufferevent has the same issue with writing as prior commit."
This reverts commit 7353663eb7c0b2a1caaaa5acd818515f156cf2ca.
|
|
fe9e831f
|
2011-11-15T17:22:45
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
34045c8f
|
2011-11-15T17:22:12
|
|
Add new entries to changelog, new credits to README
|
|
b17b0eec
|
2011-11-15T17:11:42
|
|
Fix DNS memleak checks when running with malloc-replacement/debugging disabled
|
|
f5b937e6
|
2011-11-14T18:22:08
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
e7874133
|
2011-11-14T17:33:02
|
|
Don't try to make notifiable event_base when no threading fns are configured
|
|
4e797f38
|
2011-11-14T17:32:22
|
|
Warn when unable to construct base because of failing make_base_notifiable
|
|
2ebc8c80
|
2011-11-14T11:55:37
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
7353663e
|
2011-11-14T10:57:15
|
|
openssl bufferevent has the same issue with writing as prior commit.
|
|
fc52dbac
|
2011-11-14T10:24:07
|
|
Avoid potential SSL read spinlocks
OpenSSL bufferevents with deferred callbacks enabled under high load will
spinlock in the function consider_reading(). This loop continues until all
data has been read.
Because of this condition; openssl bufferevents will never return back into
event_base_loop() until SSL_read has determined data is no longer ready.
As of yet I have not found a reason why this while loop exists, so this patch
just swaps out while for if.
If needed I can write same code which would trigger this effect; optionally
libevhtp has a test.c program which can be run with the following flags:
./test -s <keyfile.pem>
curl -vvvv -k -d@<HUGE_ASS_FILE> https://127.0.0.1:8081/
The return data will include the number of times the readcb got data and the
length of that read.
Without this patch, you are likely to see a small amount of "bytes read....",
otherwise the "bytes read..." return data should show much more reasonable
numbers.
|
|
9ae6e595
|
2011-11-14T11:45:17
|
|
Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
sample/dns-example.c
|
|
54142c94
|
2011-11-14T11:43:31
|
|
unit tests for EVBUFFER_EOL_NUL
|
|
d7a8b36e
|
2011-11-14T11:42:52
|
|
New EVBUFFER_EOL_NUL to read NUL-terminated strings from an evbuffer
|
|
27b5398f
|
2011-11-11T17:56:08
|
|
Tweaks, fixups, and comments on evbuffer_add_iovec
|
|
aaec5aca
|
2011-10-25T09:13:15
|
|
Added evbuffer_add_iovec and unit tests.
|
|
a3f320e8
|
2011-11-09T00:17:56
|
|
Improve win32 behavior of dns-sample.c codex
|
|
95af0433
|
2011-11-03T11:45:43
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
674bc6a2
|
2011-11-03T11:43:49
|
|
Fix typo in whatsnew-2.0.txt
|
|
dea055d0
|
2011-11-02T23:15:07
|
|
Merge remote-tracking branch 'github/20_evbuffer_remove_bug'
|
|
c882a959
|
2011-11-02T23:14:24
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
b18c04dd
|
2011-11-02T22:50:47
|
|
Use the free-trailing-chains function in evbuffer_insert_chain too
|
|
c37069cd
|
2011-11-02T16:09:15
|
|
Fix an evbuffer crash in evbuffer_remove_buffer()
Found by Greg Hazel.
|
|
7eb52eb8
|
2011-11-02T15:19:05
|
|
improve test to remove at least one buffer from src
|
|
90bd620f
|
2011-11-01T13:44:40
|
|
unit test for remove_buffer bug
|
|
00145918
|
2011-10-30T22:34:00
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
447b0bad
|
2011-10-30T22:32:18
|
|
Fix compile warning from saying event2/*.h inside a comment
Based on a patch by Adrian Chadd
|
|
0cb70e33
|
2011-10-26T10:17:21
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
1aee7183
|
2011-10-26T13:24:30
|
|
epoll: close fd on alloc fail at initialization
If the memory allocations fail then we free any other allocated
structures but don't close the file descriptor resulting in an leak of
fd's.
|
|
a2c48e3b
|
2011-10-24T01:31:55
|
|
evhttp: Add evhttp_foreach_bound_socket.
Applies the function specified in the first argument to all
evhttp_bound_sockets associated with a struct evhttp. The user
must not attempt to free or remove any connections, sockets or
listeners in the callback function.
|
|
356554c8
|
2011-10-25T11:43:01
|
|
Merge remote-tracking branch 'origin/patches-2.0'
|
|
3c824bd3
|
2011-10-24T13:18:09
|
|
Update copyright dates to 2011.
|
|
212533e4
|
2011-10-21T19:53:32
|
|
New event_base_update_cache_time() to set cached_tv to current time
This function is particularly useful for selectively increasing
the accuracy of the cached time value in 'base' during callbacks
that take a long time to execute.
This function has no effect if the base is currently not in its
event loop or if timeval caching is disabled via EVENT_BASE_FLAG_NO_CACHE_TIME.
|
|
c8953d1b
|
2011-10-14T17:16:03
|
|
Add argument checks to some memory functions in `event.c'.
Add a zero check to the function `event_mm_malloc_',
i.e. simply return NULL if the sz argument is zero.
On failure, set errno to ENOMEM and return NULL.
Add a zero check to the function `event_mm_calloc_',
i.e. simply return NULL if either argument is zero.
Also add an unsigned integer multiplication check, and if an integer
overflow would occur, set errno to ENOMEM and return NULL.
On failure, set errno to ENOMEM and return NULL.
Add a NULL check to the function `event_mm_strdup_',
i.e. set errno to EINVAL and return NULL.
Also add an unsigned integer addition check, and if an integer
overflow would occur, set errno to ENOMEM and return NULL.
If a memory allocation error occurs, again set errno to ENOMEM
and return NULL.
Add unit tests to `test/regress_util.c'.
|