Nick Mathewson [Thu, 6 Dec 2007 18:13:03 +0000 (18:13 +0000)]
r15172@tombo: nickm | 2007-12-06 12:54:37 -0500
Rewrite win32.c to use a red-black tree to map sockets to events. This changes the performance from O(N^2) to O(N lg N). Needs testing. (This was made possible by recent changes to the implementation of non-persistent events.)
Nick Mathewson [Thu, 6 Dec 2007 04:36:18 +0000 (04:36 +0000)]
r15166@tombo: nickm | 2007-12-05 23:35:10 -0500
Apply patch from bug 1841036: set the base of the correct event in evhttp_connection_start_detectclose()
Nick Mathewson [Mon, 26 Nov 2007 19:25:09 +0000 (19:25 +0000)]
r16735@catbus: nickm | 2007-11-26 14:24:58 -0500
Fix test for EVBUFFER_LENGTH in evhttp_make_header(). Since appending an empty buffer to another is a no-op, this is not really a bug-fix.
Nick Mathewson [Mon, 26 Nov 2007 19:18:49 +0000 (19:18 +0000)]
r16733@catbus: nickm | 2007-11-26 14:18:25 -0500
Add an --enable-gcc-warnings option (lifted from Tor) to the configure script. When provided, and when we are using GCC, we enable a bunch of extra GCC warnings in the compiler. Also, make the code all build happily with these warnings.
Nick Mathewson [Sun, 25 Nov 2007 21:53:06 +0000 (21:53 +0000)]
r16731@catbus: nickm | 2007-11-25 16:52:53 -0500
Replace all fds on non-unix-specific APIs with evutil_socket_t, which is int on unix and intptr_t on win32.
Nick Mathewson [Sun, 25 Nov 2007 21:32:26 +0000 (21:32 +0000)]
r14953@tombo: nickm | 2007-11-25 15:56:40 -0500
Replace evbuffer_readline with a more powerful evbuffer_readln that can handle more EOL styles, and that can give useful results when there are NUL characters inside the returned values. Includes regression tests.
Nick Mathewson [Sun, 25 Nov 2007 17:14:19 +0000 (17:14 +0000)]
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.
Nick Mathewson [Thu, 22 Nov 2007 16:41:29 +0000 (16:41 +0000)]
r14935@tombo: nickm | 2007-11-22 11:36:54 -0500
Always set test_ok to zero after finishing a test, and before starting one. This turns up some failures we had been missing.
Nick Mathewson [Sat, 17 Nov 2007 22:21:42 +0000 (22:21 +0000)]
r14931@tombo: nickm | 2007-11-17 17:21:09 -0500
Patch from Scott Lamb: Implement event_{base_}loopbreak. Includes documentation and tests. From sf.net Feature Request 1826546.
Nick Mathewson [Wed, 7 Nov 2007 21:01:26 +0000 (21:01 +0000)]
Make all the C files in the libraries compile under MSVC 2005 Express. There are still a few warnings, and probably some subtle issues, but it's better than nothing.
Nick Mathewson [Wed, 7 Nov 2007 07:33:16 +0000 (07:33 +0000)]
r16506@catbus: nickm | 2007-11-07 01:29:59 -0500
Make all rpc and http functions not prototyped in evrpc.h and evhttp.h into static functions. I believe that these functions were meant to be private, yes?
Nick Mathewson [Wed, 7 Nov 2007 06:01:57 +0000 (06:01 +0000)]
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.
Nick Mathewson [Wed, 7 Nov 2007 05:02:21 +0000 (05:02 +0000)]
r16497@catbus: nickm | 2007-11-07 00:01:02 -0500
Resolve issue 1826588: make event_base_free() succeed even if there are pending non-INTERNAL events still in the base. This can leak memory and fds if used injudiciously, but at least it no longer crashes.
Nick Mathewson [Wed, 7 Nov 2007 03:52:20 +0000 (03:52 +0000)]
r16489@catbus: nickm | 2007-11-06 22:51:05 -0500
Do not use "class" as identifier in evdns.h; but use a backward-compatible fix. (Should fix bug 1826515, originally reported by Roger Clark)
Nick Mathewson [Wed, 7 Nov 2007 03:40:26 +0000 (03:40 +0000)]
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].
Nick Mathewson [Tue, 6 Nov 2007 20:57:37 +0000 (20:57 +0000)]
r16473@catbus: nickm | 2007-11-06 15:55:35 -0500
Increment MAX_ADDRS in evdns so as to be quite large. This is not as good as a general solution, but it may be good enough for practical use.
Nick Mathewson [Tue, 6 Nov 2007 03:04:49 +0000 (03:04 +0000)]
r14732@tombo: nickm | 2007-11-05 22:03:28 -0500
Quick hack to make evhttp.h build when there is no TAILQ to be found. Based on patch from Paul Fisher. We could perhaps do this more elegantly, but it _does_ need to be done.
Nick Mathewson [Wed, 3 Oct 2007 17:19:22 +0000 (17:19 +0000)]
r15517@catbus: nickm | 2007-10-03 13:14:05 -0400
Correct the pointer manipulation in fake_getaddrinfo(), and do the right thing for fake_getaddrinfo(NULL,&ai). Based on a patch by Lubmir Marinov, hacked until the unit tests passed on Linux with #undef HAVE_GETADDRINFO.