]>
granicus.if.org Git - libevent/log
Nick Mathewson [Thu, 22 Jan 2009 17:48:55 +0000 (17:48 +0000)]
Use EV_PERSIST on notify event for efficiency and simplicity.
svn:r1039
Nick Mathewson [Thu, 22 Jan 2009 17:48:27 +0000 (17:48 +0000)]
Use EV_PERSIST in bufferevents for efficiency and simplicity.
svn:r1038
Nick Mathewson [Thu, 22 Jan 2009 17:48:16 +0000 (17:48 +0000)]
Fix warnings on compile: make static functions static.
svn:r1037
Niels Provos [Thu, 22 Jan 2009 06:23:14 +0000 (06:23 +0000)]
fix signal processing for non-kqueue backends; when a signal callback delivers a signal; from Alexander Drozdov
svn:r1035
Niels Provos [Thu, 22 Jan 2009 02:47:35 +0000 (02:47 +0000)]
rename sys/signal.h to signal.h; configure m4 macro dir; this assist with compilation on Haiku
svn:r1033
Niels Provos [Thu, 22 Jan 2009 02:33:38 +0000 (02:33 +0000)]
Change the semantics of timeouts in conjunction with EV_PERSIST; timeouts in that case will now repeat until deleted.
svn:r1032
Nick Mathewson [Wed, 21 Jan 2009 07:51:25 +0000 (07:51 +0000)]
New functions to provide sane threading callbacks with pthreads and win32 threading implementations.
svn:r1031
Niels Provos [Wed, 21 Jan 2009 07:18:31 +0000 (07:18 +0000)]
fix freebsd compile; from Alexander Drozdov
svn:r1030
Niels Provos [Mon, 19 Jan 2009 23:52:21 +0000 (23:52 +0000)]
rename the backend from "event ports" to "evport" - this will allow environment based disabling to work
svn:r1027
Niels Provos [Mon, 19 Jan 2009 23:40:11 +0000 (23:40 +0000)]
bug fix and potentital race condition from Alexander Drozdov
svn:r1025
Nick Mathewson [Mon, 19 Jan 2009 21:53:03 +0000 (21:53 +0000)]
Change evbuffer_read implementation to split data across chunks, and use readv when available. This should make us use less space.
svn:r1024
Nick Mathewson [Mon, 19 Jan 2009 20:37:24 +0000 (20:37 +0000)]
Use eventfd for main-thread notification where available (i.e., linux).
svn:r1023
Nick Mathewson [Mon, 19 Jan 2009 20:22:47 +0000 (20:22 +0000)]
Change the semantics of notify so we can implement it with eventfd or (given a different backend for win32) a windows Event.
svn:r1022
Nick Mathewson [Mon, 19 Jan 2009 19:46:03 +0000 (19:46 +0000)]
Debug and enable pipe notification
svn:r1021
Niels Provos [Mon, 19 Jan 2009 07:00:51 +0000 (07:00 +0000)]
make event ports compile again
svn:r1020
Nick Mathewson [Mon, 19 Jan 2009 01:34:14 +0000 (01:34 +0000)]
Make event_break threadsafe; make notify-thread mechanism a little more generic; let it use pipes where they work.
svn:r1019
Nick Mathewson [Sun, 18 Jan 2009 01:33:18 +0000 (01:33 +0000)]
Fix osx compile
svn:r1018
Niels Provos [Sat, 17 Jan 2009 07:50:34 +0000 (07:50 +0000)]
try to make devpoll work again; i dont have access to a machine
svn:r1017
Niels Provos [Fri, 16 Jan 2009 00:25:54 +0000 (00:25 +0000)]
clean up buffered data on reset; reported by Brian O'Kelley
svn:r1015
Niels Provos [Thu, 15 Jan 2009 06:15:24 +0000 (06:15 +0000)]
rename time-test in comment to signal-test
svn:r1013
Nick Mathewson [Wed, 14 Jan 2009 22:17:46 +0000 (22:17 +0000)]
Note the one restriction on what you can do with the evbuffers of a bufferevent.
svn:r1011
Nick Mathewson [Wed, 14 Jan 2009 22:17:31 +0000 (22:17 +0000)]
Make some evbuffer functions const
svn:r1010
Nick Mathewson [Wed, 14 Jan 2009 21:13:58 +0000 (21:13 +0000)]
Update win32 code to put indices in evmap.
svn:r1009
Nick Mathewson [Wed, 14 Jan 2009 20:52:32 +0000 (20:52 +0000)]
Move per-fd info from eventops into evmap. Not done for win32.c yet.
svn:r1008
Nick Mathewson [Wed, 14 Jan 2009 19:39:17 +0000 (19:39 +0000)]
Do not allow chain length to expand indefinitely.
svn:r1007
Nick Mathewson [Wed, 14 Jan 2009 18:45:42 +0000 (18:45 +0000)]
The element size for our linear evmaps is a pointer, not the whole struct.
svn:r1006
Nick Mathewson [Wed, 14 Jan 2009 18:38:03 +0000 (18:38 +0000)]
Add initializer functions for evmap types.
svn:r1005
Nick Mathewson [Wed, 14 Jan 2009 14:58:48 +0000 (14:58 +0000)]
Simplify evbuffer_write logic: combine nearly all of WSASend and writev cases.
svn:r1004
Nick Mathewson [Tue, 13 Jan 2009 22:02:32 +0000 (22:02 +0000)]
Fix compilation on win32 WSASend evbuffer_write() code.
Still not enabled until I make sure that the unit tests test this. They _do_ pass.
svn:r1003
Nick Mathewson [Tue, 13 Jan 2009 21:39:32 +0000 (21:39 +0000)]
Fix win32 compilation. Surprisingly, unit tests pass too.
svn:r1002
Nick Mathewson [Tue, 13 Jan 2009 20:50:34 +0000 (20:50 +0000)]
There is no WSAEAGAIN. There is only Zuul^WSAEWOULDBLOCK.
svn:r1001
Nick Mathewson [Tue, 13 Jan 2009 20:26:37 +0000 (20:26 +0000)]
Rename four internal headers to follow the -internal.h convention.
svn:r1000
Nick Mathewson [Tue, 13 Jan 2009 19:34:50 +0000 (19:34 +0000)]
Untested (and compiled-out) evbuffer_write backend to use WSASend on win32 where we use writev on unix.
svn:r998
Nick Mathewson [Tue, 13 Jan 2009 19:20:22 +0000 (19:20 +0000)]
Stop linking backends into libevent_extra.la
svn:r997
Nick Mathewson [Tue, 13 Jan 2009 19:20:14 +0000 (19:20 +0000)]
Move internal headers into noinst_HEADERS automake target where they belong.
svn:r996
Nick Mathewson [Tue, 13 Jan 2009 19:20:04 +0000 (19:20 +0000)]
Use new EVUTIL_ERR_*_RETRIABLE macros when we're testing an errno for blocking.
Previously, we used inconsistent and incompletely ported ifdefs.
(We don't use these macros in platform-specific files like evpoll.c, since
they don't need to work on win32.)
svn:r995
Nick Mathewson [Tue, 13 Jan 2009 19:19:50 +0000 (19:19 +0000)]
New EVUTIL_ERR_*_RETRIABLE macros to tell if an errno blocked or failed.
svn:r994
Nick Mathewson [Mon, 12 Jan 2009 20:42:19 +0000 (20:42 +0000)]
Add a new evbuffer_write_atmost() functino to write no more than a given number of bytes to an fd.
svn:r993
Nick Mathewson [Mon, 12 Jan 2009 20:42:06 +0000 (20:42 +0000)]
Small cleanups to buffer.h documentation.
svn:r992
Nick Mathewson [Mon, 12 Jan 2009 20:36:24 +0000 (20:36 +0000)]
Move strlcpy.c into libevent-core, so that code built against libevent-core on platforms without strlcpy can link.
svn:r991
Niels Provos [Mon, 12 Jan 2009 05:22:29 +0000 (05:22 +0000)]
make it compile with USE_DEBUG again; reported by Alexander Drozdov
svn:r990
Nick Mathewson [Sat, 10 Jan 2009 14:37:45 +0000 (14:37 +0000)]
Improve the hashsocket function.
svn:r989
Nick Mathewson [Fri, 9 Jan 2009 13:42:21 +0000 (13:42 +0000)]
On win32, use a hashtable to map sockets to events rather than using an array.
svn:r988
Nick Mathewson [Fri, 9 Jan 2009 05:01:48 +0000 (05:01 +0000)]
Document internal evmap functions, add a couple of asserts, and fix up some things that did not need to be void* any more
svn:r987
Nick Mathewson [Fri, 2 Jan 2009 21:21:58 +0000 (21:21 +0000)]
Work better with platforms that do not have ipv6 structures, or that do not have sin_len fields, etc.
svn:r986
Nick Mathewson [Fri, 2 Jan 2009 20:46:35 +0000 (20:46 +0000)]
Change the type of nameserver.address from u32 to sockaddr_storage, so that we can handle nameservers at IPv6 addresses.
svn:r985
Nick Mathewson [Fri, 2 Jan 2009 20:46:26 +0000 (20:46 +0000)]
Add another function to parse the common address:port combination formats into a sockaddr.
svn:r984
Nick Mathewson [Fri, 2 Jan 2009 20:46:12 +0000 (20:46 +0000)]
New functions in evutil to clone inet_pton and inet_ntop, with tests.
Adapted from Tor code.
svn:r983
Niels Provos [Fri, 2 Jan 2009 18:18:30 +0000 (18:18 +0000)]
malloc fd only if it is needed.
svn:r982
Nick Mathewson [Fri, 2 Jan 2009 04:56:56 +0000 (04:56 +0000)]
Include http_compat.h in http.c so we do not get warnings about functions with no prototypes.
svn:r981
Niels Provos [Thu, 25 Dec 2008 16:25:37 +0000 (16:25 +0000)]
implement evdns_cancel_request; test one of the new evdns_base functions
svn:r980
Niels Provos [Thu, 25 Dec 2008 16:21:13 +0000 (16:21 +0000)]
generate documentation for move dns header files
svn:r979
Niels Provos [Thu, 25 Dec 2008 16:20:45 +0000 (16:20 +0000)]
forgot to re-enable dns tests
svn:r978
Niels Provos [Thu, 25 Dec 2008 09:22:13 +0000 (09:22 +0000)]
we cannot realloc memory used by TAILQ; instead malloc each slot individually
svn:r977
Niels Provos [Tue, 23 Dec 2008 22:38:01 +0000 (22:38 +0000)]
remove http_compat include
svn:r976
Niels Provos [Tue, 23 Dec 2008 22:31:27 +0000 (22:31 +0000)]
reduce void *age a little bit
svn:r975
Niels Provos [Tue, 23 Dec 2008 22:24:32 +0000 (22:24 +0000)]
remove unused variable
svn:r974
Niels Provos [Tue, 23 Dec 2008 22:23:37 +0000 (22:23 +0000)]
deprecate the usage of signal_{add,del,set} and name it evsignal_{add,del,set} instead; move the old definitions to compat
svn:r973
Niels Provos [Tue, 23 Dec 2008 16:37:01 +0000 (16:37 +0000)]
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
Niels Provos [Tue, 23 Dec 2008 14:53:55 +0000 (14:53 +0000)]
the switch of bufferevents for http connections did not handle the EVBUFFER_ERROR case correctly
svn:r971
Niels Provos [Fri, 19 Dec 2008 22:42:51 +0000 (22:42 +0000)]
fix memory leaks in the regression tools; add another close detection test that validates that there are no dangling connections on the server
svn:r969
Niels Provos [Fri, 19 Dec 2008 22:41:07 +0000 (22:41 +0000)]
fix the close detection problem correctly by not running close detection on the server
svn:r968
Niels Provos [Fri, 19 Dec 2008 21:31:43 +0000 (21:31 +0000)]
Make the http connection close detection work properly with bufferevents and fix a potential memory leak associated with it
svn:r963
Niels Provos [Fri, 19 Dec 2008 21:03:42 +0000 (21:03 +0000)]
memory leak: forgot to free paused rpcs in server
svn:r962
Niels Provos [Fri, 19 Dec 2008 21:02:36 +0000 (21:02 +0000)]
memory leak: forgot to free the configuration object
svn:r961
Niels Provos [Sat, 13 Dec 2008 06:11:12 +0000 (06:11 +0000)]
constify structs; from Andrei Nigmatulin
svn:r959
Nick Mathewson [Wed, 3 Dec 2008 20:09:13 +0000 (20:09 +0000)]
Implement increased DSN-poisoning resistance via the 0x20 hack.
svn:r958
Niels Provos [Sat, 29 Nov 2008 01:12:41 +0000 (01:12 +0000)]
move cirular queue removal into its own function
svn:r957
Niels Provos [Fri, 28 Nov 2008 20:55:11 +0000 (20:55 +0000)]
install the header files, too
svn:r956
Niels Provos [Fri, 28 Nov 2008 20:11:24 +0000 (20:11 +0000)]
move dns header files into the include directory; move old functions into compat and structs into a struct header file
svn:r955
Niels Provos [Thu, 27 Nov 2008 19:57:48 +0000 (19:57 +0000)]
fix a typo in setting the global event base; reported by lance
svn:r953
Niels Provos [Thu, 27 Nov 2008 19:34:07 +0000 (19:34 +0000)]
minor compilation and regresson fixes; from Frank Denis
svn:r952
Niels Provos [Thu, 27 Nov 2008 19:27:33 +0000 (19:27 +0000)]
Clear the timer cache when leaving the event loop; reported by Robin Haberkorn
svn:r950
Niels Provos [Sun, 16 Nov 2008 23:22:14 +0000 (23:22 +0000)]
Allow setting of local port for evhttp connections to support millions of connections from a single system; from Richard Jones
svn:r948
Niels Provos [Sat, 15 Nov 2008 05:27:23 +0000 (05:27 +0000)]
only bind the socket on connect when a local address has been provided; reported by Ajejo Sanchez
svn:r946
Niels Provos [Thu, 30 Oct 2008 19:38:31 +0000 (19:38 +0000)]
clear the timer cache on entering event loop; reported by Victor Chang
svn:r944
Nick Mathewson [Fri, 26 Sep 2008 13:36:15 +0000 (13:36 +0000)]
Fix: do not crash when asked to configure an impossible event_base
svn:r942
Niels Provos [Sun, 7 Sep 2008 23:24:54 +0000 (23:24 +0000)]
do not remove accept-encoding header in make request
svn:r938
Nick Mathewson [Fri, 5 Sep 2008 16:47:04 +0000 (16:47 +0000)]
Fix compilation of recent error code with win32.
svn:r937
Nick Mathewson [Fri, 5 Sep 2008 16:29:56 +0000 (16:29 +0000)]
On win32, errno is not the last socket error. Worse, WSAGetLastError() is not the last socket error sometimes (i.e., EWOULDBLOCK). Also, strerror() does not handle winsock errors. Therefore, event_err() and event_warn() are completely wrong for windows socket errors. Fix that.
svn:r936
Niels Provos [Sat, 30 Aug 2008 23:19:49 +0000 (23:19 +0000)]
Match the query in DNS replies to the query in the request; from Vsevolod Stakhov
svn:r930
Niels Provos [Tue, 19 Aug 2008 11:26:47 +0000 (11:26 +0000)]
Fix a bug where headers arriving in multiple packets were not parsed; fix from Jiang Hong; test by me.
svn:r928
Niels Provos [Fri, 25 Jul 2008 05:22:28 +0000 (05:22 +0000)]
do not warn on accept when errno is egain|eintr
svn:r925
Niels Provos [Fri, 25 Jul 2008 01:29:54 +0000 (01:29 +0000)]
make event_add not change any state if it fails; repoted by Ian Bell
svn:r923
Niels Provos [Fri, 25 Jul 2008 01:18:40 +0000 (01:18 +0000)]
fix off by one errors in devpoll; from Ian Bell
svn:r921
Niels Provos [Fri, 25 Jul 2008 00:48:30 +0000 (00:48 +0000)]
another fix; we also need to remove the signal event from the queue
svn:r918
Niels Provos [Fri, 25 Jul 2008 00:19:15 +0000 (00:19 +0000)]
fix a problem with epoll and event_reinit; reported by Alexander Drozdov
svn:r917
Niels Provos [Sun, 20 Jul 2008 23:31:28 +0000 (23:31 +0000)]
add a signal and free the base for reinit test
svn:r915
Niels Provos [Sat, 19 Jul 2008 23:35:29 +0000 (23:35 +0000)]
restore signal handlers correctly when we deallocate the signal base
svn:r913
Niels Provos [Thu, 17 Jul 2008 14:09:07 +0000 (14:09 +0000)]
if we change the timeouts on bufferevents, we might have to readd pending events
svn:r911
Niels Provos [Wed, 16 Jul 2008 03:47:47 +0000 (03:47 +0000)]
support setting of AA or RD in dns server response
svn:r910
Niels Provos [Sun, 13 Jul 2008 20:18:41 +0000 (20:18 +0000)]
fix cname replies
svn:r907
Niels Provos [Fri, 11 Jul 2008 16:11:16 +0000 (16:11 +0000)]
forgot to add Alexander Drozdov as bug reporter in ChangeLog
svn:r905
Niels Provos [Fri, 11 Jul 2008 16:04:07 +0000 (16:04 +0000)]
assert(a & b) -> assert(a && b)
svn:r903
Niels Provos [Fri, 11 Jul 2008 15:49:04 +0000 (15:49 +0000)]
support multiple events listening on the same signal; make signals regular events that go on the same event queue
svn:r901
Niels Provos [Fri, 11 Jul 2008 15:15:04 +0000 (15:15 +0000)]
fix a bug where deleting signals with kqueue would delete subsequent adds
svn:r899
Niels Provos [Wed, 2 Jul 2008 06:08:16 +0000 (06:08 +0000)]
From Scott Lamb:
* Allow the user to set the Content-Length: then stream a reply.
This is useful for large requests of a known size. Added unit test.
* Don't send a response body on HEAD requests, 1xx status codes, 204
status codes, or 304 status codes, as described in RFC 2616 section
4.3. (Doing otherwise causes problems - in particular, if a 304 has a
chunked body (even an empty one), Safari 3.1.1 issues and then fails
the next request on the connection with the non-sequitur error message
"Too many HTTP redirects"!)
* Specify a default Content-Type: when a response body is required, not
when we have data in the response buffer by the time we make the
header. (I.e., do this on evhttp_send_reply_start() for consistency.)
* Don't expect a body in response to HEAD requests.
svn:r898
Niels Provos [Wed, 2 Jul 2008 04:39:09 +0000 (04:39 +0000)]
detect CLOCK_MONOTONIC at runtime for evdns
svn:r896
Niels Provos [Wed, 2 Jul 2008 04:22:48 +0000 (04:22 +0000)]
reject negative content-length headers
svn:r894
Niels Provos [Sun, 29 Jun 2008 01:30:06 +0000 (01:30 +0000)]
support multi-line http headers; based on a patch from Moshe Litvin
svn:r890