50 Commits

Author SHA1 Message Date
Nick Mathewson
ec347b9225 Move event-config.h to include/event2
This change means that all required include files are in event2, and
all files not in event2/* are optional.
2010-08-06 20:21:27 -04:00
Trond Norbye
13b912e4ac Fixed compilation of sample/le-proxy.c on win32 2010-08-01 21:39:48 +02:00
Nick Mathewson
d89fdba424 Make sample/hello_world work on windows
We forgot to include the WSAStartup call in main().

Patch from an anonymous user on Sourceforge.

Fixes bug 3025354.
2010-07-05 12:28:22 -04:00
Nick Mathewson
2c2618d858 more whitespace normalization 2010-03-05 13:00:15 -05:00
Nick Mathewson
c7cf6f0049 Replace users of "int fd" with "evutil_socket_t fd" in portable code
Remeber, win32 has a socket type that's actually a handle, so if
there's a chance that code is run on win32, we can't use "int" as the
socket type.

This isn't a blind search-and-replace: sometimes an fd is really in
fact for a file, and not a socket at all.
2010-03-05 12:47:46 -05:00
Nick Mathewson
4faeaea90e Clean up formatting: function/keyword spacing consistency.
- Keywords always have a space before a paren.  Functions never do.

- No more than 3 blank lines in a row.
2010-02-19 03:39:50 -05:00
Nick Mathewson
e5bbd40ad7 Clean up formatting: use tabs, not 8-spaces, to indent. 2010-02-18 17:44:09 -05:00
Nick Mathewson
8fdf09c09d Clean up formatting: Disallow space-before-tab. 2010-02-18 17:08:50 -05:00
Nick Mathewson
b72be50d7a Add some headers to fix freebsd compilation 2010-02-18 13:52:04 -05:00
Brodie Thiesfield
000a33ec83 Make Libevent 1.4.12 build on win32 with Unicode enabled.
This patch fixes calls to the win32 api to explicitly call the char* versions
of the functions. This fixes build failures when libevent is built with the
UNICODE define.
2010-02-03 23:31:44 -05:00
Nick Mathewson
f4190bfb85 Update time-test.c to use event2
time-test.c wasn't crazy, but it used some old interfaces.

There are probably more cleanups and explanations to do beyond the
ones here.
2010-01-27 01:47:36 -05:00
Nick Mathewson
d60a1bd50c Clarify status of example programs
(That is, add comments to say that dns-example and le-proxy are recent and
ugly; event-test is old and ugly.)
2010-01-27 01:46:41 -05:00
Nick Mathewson
becb9f9cd3 Add a new "hello world" sample program 2010-01-27 01:46:23 -05:00
Evan Jones
f6430ac1e3 Update sample/signal-test.c to use newer APIs and not leak. 2009-12-08 17:05:30 -05:00
Nick Mathewson
625a261a53 OpenBSD demands that sys/types.h be included before sys/socket.h
svn:r1539
2009-11-17 02:40:14 +00:00
Nick Mathewson
86f5742015 Add two implementations of getaddrinfo: one blocking and one nonblocking.
The entry points are evutil_getaddrinfo and evdns_getaddrinfo respectively.
There are fairly extensive unit tests.

I believe this code conforms to RFC3493 pretty closely, but there are
probably more issues.  It should get tested on more platforms.

This code means we can dump the well-intentioned but weirdly-implemented
bufferevent_evdns and evutil_resolve code.

svn:r1537
2009-11-16 22:25:46 +00:00
Nick Mathewson
784b8773a4 We do not work any more without an event-config.h; stop pretending that it is meaningful to check for HAVE_CONFIG_H
svn:r1516
2009-11-06 21:46:57 +00:00
Nick Mathewson
ae5fbf492f Actually add the new dns-example.c code. :p
svn:r1512
2009-11-05 22:24:21 +00:00
Nick Mathewson
d2e7e65d21 Move the evdns sample code into the sample directory and fix it not to use any deprecated APIs.
svn:r1511
2009-11-05 22:19:09 +00:00
Nick Mathewson
516452b71a Keep openssl errors associated with the right bufferevent object.
OpenSSL has a per-thread error stack, and really doesn't like you
leaving errors on the stack.  Rather than discard the errors or force
the user to handle them, this patch pulls them off the openssl stack
and puts them on a stack associated with the bufferevent_openssl.  If
the user leaves them on the stack then, it won't affect any other
connections.

This bug was found by Roman Puls.  Thanks!

svn:r1481
2009-10-30 21:08:29 +00:00
Nick Mathewson
c119e4a13f Improve the behavior of le-proxy in a few cases.
svn:r1458
2009-10-23 17:40:00 +00:00
Nick Mathewson
5b5b880be7 Various MSVC cleanups from Brodie Thiesfield.
svn:r1385
2009-07-28 19:41:39 +00:00
Nick Mathewson
709c21c48c 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
2009-07-28 04:03:57 +00:00
Nick Mathewson
043515bc52 Stop using C++ style comments.
svn:r1343
2009-07-14 18:50:06 +00:00
Nick Mathewson
dfe321e1ee Add missing windows include in time-test.c
svn:r1311
2009-05-22 20:11:29 +00:00
Nick Mathewson
e8343e9ff1 work around missing __func__ in sample code
svn:r1310
2009-05-22 19:11:59 +00:00
Nick Mathewson
8889a77039 Replace all use of config.h with event-config.h.
svn:r1064
2009-01-27 22:30:46 +00:00
Nick Mathewson
9993137cbb Remove all trailing whitespace in all the source files.
svn:r1063
2009-01-27 21:10:31 +00:00
Niels Provos
83d2a34c99 rename time-test in comment to signal-test
svn:r1013
2009-01-15 06:15:24 +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
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
97917e68e7 r16588@catbus: nickm | 2007-11-10 02:47:14 -0500
Another include for sample.  Patch from Christopher Layne.


svn:r507
2007-11-10 07:49:13 +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
a36d4a930d r14699@catbus: nickm | 2007-08-20 10:42:57 -0400
Use $top_srcdir and $srcdir variables to refer to source paths in Makefile.am.  This makes it possible to build libevent from a separate directory.  Patch from Kelly Anderson.


svn:r400
2007-08-20 14:44:15 +00:00
Nick Mathewson
21a7e7ed67 r14498@catbus: nickm | 2007-08-10 11:58:32 -0400
Fix compilation warnings in trunk on linux with gcc 4.1.2.  In time-test.c, always include time.h, so that time() is defined.  In test/Makefile.am, put -I../compat in CPPFLAGS, and fix a typo.  In test/regress.c, cast unsigned char pointers to char* before passing them to str[n]cmp.


svn:r385
2007-08-10 15:59:31 +00:00
Niels Provos
aa106169a0 use AM_CLFAGS from Jan Kneschke
svn:r376
2007-07-31 00:21:04 +00:00
Niels Provos
d1848a8872 include config.h
svn:r365
2007-06-14 04:38:42 +00:00
Niels Provos
b5d2f9a255 rolling back r339: evconfig.h does not work
svn:r341
2007-03-01 06:25:18 +00:00
Niels Provos
127c260bb7 make evconfig.h available as installed header file; not
really ideal but good enough for me; from Nick Mathewson


svn:r339
2007-02-28 04:02:29 +00:00
Niels Provos
fdfa743ccc libtoolize; from Nick Mathewson
svn:r153
2005-04-23 02:48:49 +00:00
Niels Provos
f5a62ed30e make a separate verify target
svn:r124
2004-12-01 19:59:00 +00:00
Niels Provos
025d1bc220 fix some of the windows compile issues; make buffer.c faster; support
signals via pipes.


svn:r105
2004-05-24 00:19:52 +00:00
Niels Provos
9d26a46c39 windows support
svn:r79
2003-09-25 03:29:37 +00:00
Niels Provos
9d2401fffc portability fixes from marius@umich.edu.
svn:r35
2002-10-07 00:47:34 +00:00
Niels Provos
5f8658582e sync with openbsd; API change: timeout_ is now evtimer_
svn:r29
2002-07-26 14:45:50 +00:00
Niels Provos
d10f85dbce signal support for kqueue; support of EV_PERSIST flag to event_set
svn:r18
2002-04-10 02:10:47 +00:00
Niels Provos
b855bc5500 initial support for signals (only for select now) based on code from
Dug Song <dugsong@monkey.org>


svn:r17
2002-04-10 00:31:31 +00:00
Niels Provos
dbaa408ea5 port to solaris
svn:r16
2002-04-09 19:30:22 +00:00
Niels Provos
5b27aa0323 further automake conversion
svn:r10
2002-04-09 17:42:15 +00:00
Niels Provos
aa6567fe64 Initial revision
svn:r2
2002-04-09 15:14:06 +00:00