294 Commits

Author SHA1 Message Date
Nick Mathewson
8acb80b4f9 r15551@tombo: nickm | 2008-05-08 14:49:20 -0400
Use _get_ convention for new accessor functions.  (These are all new ones as of 2.0, I believe).


svn:r799
2008-05-08 22:51:39 +00:00
Niels Provos
3f56e364b7 event_base_new_with_config() and related methods
svn:r789
2008-05-08 05:56:20 +00:00
Niels Provos
3b2022ef3a provide an api for retrieving the supported event mechanisms
svn:r788
2008-05-08 05:33:15 +00:00
Nick Mathewson
caa368e1cc r19610@catbus: nickm | 2008-05-05 15:18:52 -0400
Switch strcmp() tests in test_evbuffer() to use memcmp instead.  Previously they broke on my Linux box.


svn:r779
2008-05-05 19:19:47 +00:00
Nick Mathewson
4e8a339ef7 r19602@catbus: nickm | 2008-05-05 11:45:18 -0400
Make most of the tests use the new headers.


svn:r776
2008-05-05 15:46:00 +00:00
Niels Provos
1d30750b1d support for periodic timeouts
svn:r762
2008-05-03 22:10:09 +00:00
Niels Provos
f04497e493 introduce evbuffer_reserve_space() and evbuffer_commit_space() to make processing in filters more efficient
svn:r757
2008-05-03 03:05:28 +00:00
Niels Provos
ccb70f1bc7 provide example bufferevent filters doing compression and decompression as additional regression test
svn:r751
2008-04-30 04:31:10 +00:00
Niels Provos
c58a01a23b fix regression test; oops
svn:r749
2008-04-30 00:50:20 +00:00
Niels Provos
682adc443b support input/output filters for bufferevents
svn:r748
2008-04-30 00:09:16 +00:00
Niels Provos
3a17aeed7a fix a bug in buffrevent read water marks and add a test for them
svn:r731
2008-04-26 01:00:44 +00:00
Niels Provos
89f63b205d add bufferevent_read_buffer function
svn:r728
2008-04-25 02:44:46 +00:00
Niels Provos
193c06a7ed fix a bug in which evbuffer_add_vfprintf would loop forever; avoid
fragmentation in evbuffer_expand by increasing the size of the last buffer
in the chain; as a result with have to keep track of the previous_to_last
chain;   provide a evbuffer_validate() function in the regression test to
make sure that all evbuffer are internally consistent.


svn:r699
2008-03-31 02:04:34 +00:00
Niels Provos
558de9b377 Provide OpenSSL style support for multiple threads accessing the same event_base
svn:r684
2008-03-02 21:18:33 +00:00
Nick Mathewson
0e7cbe6508 r18482@catbus: nickm | 2008-02-28 12:38:40 -0500
Fix GCC 4.2 warnings; fix includes in subdirs.


svn:r675
2008-02-28 17:38:52 +00:00
Niels Provos
5c70ea4c9d improved code for evbuffer; avoids memcpy
svn:r674
2008-02-28 02:47:43 +00:00
Niels Provos
bd31d00fc1 move signal callbacks closer to test code
svn:r670
2008-02-26 04:54:19 +00:00
Niels Provos
67bf29ad72 simplify evbuffer by removing orig_buffer
svn:r654
2008-02-23 06:02:04 +00:00
Nick Mathewson
11230f7e16 r18145@catbus: nickm | 2008-02-18 15:02:20 -0500
Stop using deprecated autoconf code to set integer types; detect actual files to include more thoroughly.   This should make us work on solaris 9 again.  This should be a backport candidate, if it works.  Also, make all libevent code use ev_uint32_t etc, rather than uint_32_t.


svn:r649
2008-02-18 20:04:01 +00:00
Nick Mathewson
807ab182d0 r14211@tombo: nickm | 2008-02-16 15:28:54 -0500
Add new evutil_strtoll() function so we can apply 64-bit content-length patch from Scott Lamb in a portable way.


svn:r640
2008-02-16 20:49:47 +00:00
Niels Provos
8c66d4e289 remove pending timeouts on event_base_free
svn:r627
2008-01-26 07:29:57 +00:00
Niels Provos
7e3a7af7d0 support string arrays in event_rpcgen
svn:r613
2007-12-24 23:59:41 +00:00
Niels Provos
68725dc8bd support integer arrays in rpc structures; this involved some refactoring of the event_rpcgen code, so that other types should be able to get arrays fairly easily
svn:r609
2007-12-23 07:38:11 +00:00
Nick Mathewson
a5176a65cc Fix a win32 warning in regress.c
svn:r608
2007-12-20 22:45:30 +00:00
Niels Provos
d4bdbca847 add -Wstrict-aliasing and remove bogus evtag_test from event.h
svn:r602
2007-12-18 03:54:19 +00:00
Nick Mathewson
d56a34e466 r16991@catbus: nickm | 2007-12-06 15:05:56 -0500
Move event_init in regress.c to the function that actually messed up the current_base value.


svn:r598
2007-12-16 19:33:52 +00:00
Niels Provos
ffd606cd6d prefix {encode,decode}_tag functions with evtag to avoid collisions
svn:r587
2007-12-13 06:14:18 +00:00
Niels Provos
ba48719946 support for 32-bit tag numbers in rpc structures
svn:r583
2007-12-12 04:39:42 +00:00
Nick Mathewson
fa89d661d9 Adjust more unit tests to pass on win32.
svn:r580
2007-12-06 19:40:49 +00:00
Nick Mathewson
1e435af17e r15170@tombo: nickm | 2007-12-06 12:38:03 -0500
Fix a warning in regress.c


svn:r572
2007-12-06 18:12:44 +00:00
Niels Provos
60103d25a9 remove duplicate submit of test_evbuffer_readln
svn:r569
2007-12-01 16:36:00 +00:00
Nick Mathewson
395dd198cb r15096@tombo: nickm | 2007-12-01 04:29:39 -0500
Test for corner-cases of re-adding non-persistent events from one another's handlers


svn:r568
2007-12-01 09:30:07 +00:00
Nick Mathewson
d73cf1e1f2 svn:r567 2007-12-01 09:29:52 +00:00
Niels Provos
eeb5e4cd88 a bug in the regression test of event_reinit caused epoll to fail
svn:r560
2007-11-29 02:52:32 +00:00
Niels Provos
e2e4cf1f6c more complete test for forking behavior
svn:r556
2007-11-27 06:11:28 +00:00
Nick Mathewson
ce4ee418d2 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.


svn:r553
2007-11-26 19:18:49 +00:00
Nick Mathewson
6773a59721 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.


svn:r550
2007-11-25 21:32:26 +00:00
Nick Mathewson
2823cb0579 r14944@tombo: nickm | 2007-11-25 12:12:28 -0500
Make kqueue pass more unit tests.


svn:r544
2007-11-25 17:15:28 +00:00
Niels Provos
88897852fc provide event_reinit() to reinitialized an event_base after fork - necessary for epoll/kqueue
svn:r539
2007-11-25 06:57:59 +00:00
Nick Mathewson
8c3396b0c6 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.


svn:r537
2007-11-22 16:41:29 +00:00
Nick Mathewson
1c23e21952 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.


svn:r535
2007-11-17 22:21:42 +00:00
Niels Provos
f586f42885 provide event_base_new() as a mechanism for not setting the current_global
svn:r529
2007-11-14 17:52:21 +00:00
Nick Mathewson
321dfd55d4 r16585@catbus: nickm | 2007-11-10 00:16:11 -0500
Patch from Christopher Layne: Make event_del() restore previous signal handlers, not the default.


svn:r506
2007-11-10 05:18:17 +00:00
Nick Mathewson
f74e7258fd 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.
 


svn:r492
2007-11-07 06:01:57 +00:00
Nick Mathewson
206d433638 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.


svn:r490
2007-11-07 05:02:21 +00:00
Niels Provos
22bd8b0094 remove last vestiges of RBTREE
svn:r471
2007-11-03 23:54:27 +00:00
Nick Mathewson
c91794e25d Instead of read/write in regress.c, use send/recv. Now all of the win32 regression tests pass, except for http and rpc.
svn:r461
2007-10-12 18:02:56 +00:00
Niels Provos
a4cc3d148a rename the rpc member from kill to attack; that way the
structure does not have the same name.  might find some
bugs.


svn:r449
2007-09-22 23:57:11 +00:00
Nick Mathewson
1e1f77c5b0 Make the test/ subdirectory buildable under Windows. Well, mingw at least. The tests still don't all pass, but at least now we know that.
svn:r447
2007-09-20 19:08:20 +00:00
Niels Provos
8ee20a3fa4 fix memory leaks/unitialized memory found by valgrind
svn:r418
2007-09-09 02:15:34 +00:00