236 Commits

Author SHA1 Message Date
Nick Mathewson
76b994ac61 Merge pull request #54 from rosslagerwall/configure-dup
Remove unnecessary code in configure.in.
2012-05-21 10:59:20 -07:00
Ross Lagerwall
e65914fdfe Remove unnecessary code in configure.in. 2012-05-12 08:38:19 +02:00
Nick Mathewson
26c75828b7 When PRECISE_TIMERS is set with epoll, use timerfd for microsecond precision
The epoll interface ordinarily gives us one-millisecond
precision, so on Linux it makes perfect sense to use the
CLOCK_MONOTONIC_COARSE timer.  But when the user has set the new
PRECISE_TIMER flag for an event_base (either by the
EVENT_BASE_FLAG_PRECISE_TIMER flag, or by the EVENT_PRECISE_TIMER
environment variable), they presumably want finer granularity.

On not-too-old Linuxes, we can achieve this using the Timerfd
mechanism, which accepts nanosecond granularity and understands
posix clocks.  It's a little more expensive than just calling
epoll_wait(), so we won't do it by default.
2012-04-26 16:42:21 -04:00
Nick Mathewson
b8fd6f918b Use mach_absolute_time() for monotonic clock support on OSX. 2012-04-09 18:29:30 -04:00
Nick Mathewson
d9a5515336 Increment the version to 2.1.1-alpha-dev 2012-04-03 20:30:54 -04:00
Nick Mathewson
3faaad49c4 Bump the version to Libevent 2.1.1-alpha 2012-04-03 17:26:12 -04:00
Nick Mathewson
93defa2ffc Merge remote-tracking branch 'origin/patches-2.0' 2012-04-03 09:52:40 -04:00
Sebastian Hahn
4a6fd43313 Configure with gcc older than 2.95
I don't know why people use such ancient gcc versions, but the fix seems
straightforward enough to maybe just do it.
2012-04-03 05:37:31 +02:00
Nick Mathewson
f0fb2c271c Bump version to 2.0.18-stable-dev 2012-03-22 14:34:01 -04:00
Nick Mathewson
75401035f0 Bump version to 2.0.18-stable 2012-03-22 14:00:54 -04:00
Nick Mathewson
45d6213ef5 Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
	configure.in
2012-03-13 15:56:35 -04:00
Sebastian Hahn
083296bc27 Don't do clang version detection when disabling some flags
When clang 2.9 was around we hoped they'd introduce support for the
normalized=id and override-init warnings by 3.0, but they haven't. We
should only add the version detection back in when clang actually
supports those warnings.
2012-03-13 06:43:02 +01:00
Ross Lagerwall
1c4288f492 Allow compilation on machines that do not have setrlimit. 2012-02-25 07:36:49 +02:00
Mark Ellzey
5880e4a1fc Support TCP_DEFER_ACCEPT sockopts for listeners
A listening socket can be enabled with the sockopt
TCP_DEFER_ACCEPT. This informs the kernel to not call the user-land
accept() until real data has been written to the socket.

A new flag LEV_OPT_DEFERRED_ACCEPT has been introduced to
automatically set this option. Optionally
evutil_make_tcp_listen_socket_deferred() can be called manually.

(Tweaked slightly by nickm.)
2012-02-15 21:19:28 -05:00
Nick Mathewson
a220a08139 Merge remote-tracking branch 'github/21_fast_syscalls' 2012-02-15 21:07:44 -05:00
Nick Mathewson
a37cbfdafc Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
	configure.in
2012-02-14 15:44:03 -05:00
Mark Ellzey
2d67b63853 Changed OPENSSL_LDFLAGS to OPENSSL_LIBADD 2012-02-14 15:37:58 -05:00
Mark Ellzey
9278196847 Added OPENSSL_LDFLAGS env variable which is appended to SSL checks.
If openssl is not installed system-wide or not compiled as a shared library,
some systems require various link flags (e.g., -ld).
2012-02-14 15:01:02 -05:00
Nick Mathewson
2d7bf0f78d Bump version to 2.0.17-stable-dev 2012-02-10 22:16:14 -05:00
Nick Mathewson
539466e568 Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
	Makefile.am
	WIN32-Code/event2/event-config.h
	configure.in
2012-02-10 17:33:50 -05:00
Nick Mathewson
e49e289129 Update copyright notices to 2012 2012-02-10 17:29:53 -05:00
Nick Mathewson
8152b4c2b3 Bump version to 2.0.17-stable 2012-02-10 16:49:05 -05:00
Nick Mathewson
bac906c761 Prefer epoll_create1 on Linuxen that have it 2012-02-10 16:39:46 -05:00
Nick Mathewson
a1c042bfe9 Infrastructure for using faster/fewer syscalls when creating sockets
Linux provides some features that allow avoiding extra calls to
fcntl when creating new nonblocking/close-on-exec sockets, so
we can add wrapper functions to emulate those when they are not
available.

Additionally, even when we are emulating those functions, we can
take a fast path that cuts our fcntl calls in half: we don't need to
look up the previous value of a file's flags when we have just
created it.
2012-02-10 16:11:47 -05:00
Nick Mathewson
f25d9d32b1 Add an (internal) usleep function for use by unit tests 2012-01-24 11:42:26 -05:00
Nick Mathewson
d430602863 Merge remote-tracking branch 'origin/patches-2.0'
Conflicts:
	configure.in
2011-12-08 11:43:04 -05:00
Mike Frysinger
358c745e54 check for sysctl before we use it
Not all C libraries under Linux support the sysctl() func.
2011-12-08 11:39:48 -05:00
Nick Mathewson
88a30ad880 Split up extra-long AC_CHECK_FUNCS/HEADERS lines in configure.in 2011-12-07 18:29:06 -05:00
Nick Mathewson
7085a4568c Use getifaddrs to detect our interfaces if possible
The old scheme involved connected UDP sockets and getsockname(), and is
generally best avoied.
2011-12-07 18:16:32 -05:00
Nick Mathewson
ba4d66961e Increment version to 2.0.16-stable-dev 2011-11-18 15:34:37 -05:00
Nick Mathewson
5de3fa3208 Increment version to 2.0.16-stable 2011-11-18 15:27:06 -05:00
Nick Mathewson
8589f6c45b Bump version to 2.0.15-stable-dev 2011-10-12 01:00:23 -04:00
Nick Mathewson
4d9529fcfa Increment version to 2.0.15-stable 2011-10-12 00:22:17 -04:00
Nick Mathewson
8a2310408f Build with large-file support on platforms where it matters
Some hosts require you to define certain options to get a large off_t
instead of a small one, to get useful ftell and fseek calls instead of
ones that can only support 2GB files, and so on.  This patch makes
Libevent support those platforms by:

   * Defining the right options when we build, and
   * Changing our API so that it does not depend on the platform's
     definition of off_t.

Based on discusion with Michael Herf
2011-09-12 14:53:39 -04:00
Nick Mathewson
caf133f901 Merge branch 'new_configure_options' 2011-09-12 10:09:28 -04:00
Sebastian Hahn
755026771a Implement --enable-gcc-hardening configure option
Using --enable-gcc-hardening enables some additional safety features
that gcc makes available such as stack smashing protection using
canaries and ASLR.

This commit is based on a patch for Tor:
(git commit 04fa935e02270bc90aca0f1c652d31c7a872175b by Jacob Appelbaum)
Copyright (c) 2007-2011, The Tor Project, Inc.
2011-09-12 10:09:21 -04:00
Sebastian Hahn
d46517ee55 Make gcc warnings on by default, and --enable-gcc-warnings only add -Werror
This commit is based on a patch for Tor
(git commit ca60a6ce3f4786626ac455ec1b798b2e8304635c by Peter
Palfrader), Copyright (c) 2007-2011, The Tor Project, Inc.

(Originally, it added --enable-gcc-warnings-advisory as in Tor; Nick
changed that.)
2011-09-12 10:07:44 -04:00
Nick Mathewson
10c3450fd6 Make --enable-verbose-debug option match its help text 2011-08-31 11:58:40 -04:00
Nick Mathewson
a718b6c31c Increment version to 2.0.14-stable-dev 2011-08-31 11:25:11 -04:00
Nick Mathewson
85976ddfa4 Bump version to 2.0.14-stable 2011-08-30 22:28:02 -04:00
Harlan Stenn
1c63860758 Use pkg-config (if available) to handle OpenSSL. 2011-08-28 14:31:28 -04:00
Nick Mathewson
d87a3f71c6 Merge remote-tracking branch 'ellzey/event_debug_flag' 2011-08-11 13:59:02 -04:00
Nick Mathewson
d4f56353f7 Merge remote-tracking branch 'origin/patches-2.0' 2011-08-10 13:18:30 -04:00
Sebastian Hahn
5d1b255b14 Ignore deprecation warnings on OS X
Starting with Lion, Apple decided to deprecate the system openssl. We
can start requiring users to install their own openssl once OS X doesn't
ship with it anymore.
2011-08-10 19:13:39 +02:00
Mark Ellzey
a9c2c9ab62 changed to --enable-verbose-debug 2011-08-06 01:32:40 -04:00
Mark Ellzey
bc7b4e4051 Added --enable-event-debugging in configure 2011-08-02 17:23:52 -04:00
Nick Mathewson
a2fdf9b04f Bump version to 2.0.13-stable-dev 2011-07-18 23:37:59 -04:00
Nick Mathewson
80414e22a7 Bump version to 2.0.13-dev 2011-07-18 18:19:25 -04:00
Nick Mathewson
60c1426f2c Bump version to 2.0.12-stable-dev 2011-06-04 21:36:34 -04:00
Nick Mathewson
7283facdb9 Bump version to 2.0.12-stable. Not release just yet 2011-06-03 17:08:14 -04:00