]> granicus.if.org Git - libevent/log
libevent
13 years agoMore abstraction in test.sh
Nick Mathewson [Tue, 5 Jul 2011 18:41:46 +0000 (14:41 -0400)]
More abstraction in test.sh

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Tue, 5 Jul 2011 18:38:21 +0000 (14:38 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

Conflicts:
include/event2/buffer.h
include/event2/thread.h
include/event2/util.h

13 years agoMerge branch 'doxygen' into patches-2.0
Nick Mathewson [Tue, 5 Jul 2011 17:04:30 +0000 (13:04 -0400)]
Merge branch 'doxygen' into patches-2.0

13 years agoUpdate Doxyfile to produce more useful output
Nick Mathewson [Tue, 5 Jul 2011 03:14:19 +0000 (23:14 -0400)]
Update Doxyfile to produce more useful output

13 years agoRevise the event/evbuffer/bufferevent doxygen for clarity and accuracy
Nick Mathewson [Tue, 5 Jul 2011 03:02:11 +0000 (23:02 -0400)]
Revise the event/evbuffer/bufferevent doxygen for clarity and accuracy

13 years agoUse "unlimited select" on OSX so that we can have more than FD_SETSIZE fds
Nick Mathewson [Tue, 5 Jul 2011 04:36:09 +0000 (00:36 -0400)]
Use "unlimited select" on OSX so that we can have more than FD_SETSIZE fds

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Tue, 5 Jul 2011 04:35:35 +0000 (00:35 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix select.c compilation on systems with no NFDBITS
Nick Mathewson [Tue, 5 Jul 2011 04:11:59 +0000 (00:11 -0400)]
Fix select.c compilation on systems with no NFDBITS

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 4 Jul 2011 16:22:54 +0000 (12:22 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoMerge remote-tracking branch 'github/20_global_locks_init' into patches-2.0
Nick Mathewson [Mon, 4 Jul 2011 16:16:08 +0000 (12:16 -0400)]
Merge remote-tracking branch 'github/20_global_locks_init' into patches-2.0

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 4 Jul 2011 15:48:41 +0000 (11:48 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoSpeed up invoke_callbacks on evbuffers when there are no callbacks
Mark Ellzey [Mon, 4 Jul 2011 15:47:24 +0000 (11:47 -0400)]
Speed up invoke_callbacks on evbuffers when there are no callbacks

This fixes a performance regression against 1.4

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 4 Jul 2011 15:37:52 +0000 (11:37 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix bug in SSL bufferevents backed by a bev with a write high-watermarks
Joachim Bauch [Mon, 4 Jul 2011 15:36:14 +0000 (11:36 -0400)]
Fix bug in SSL bufferevents backed by a bev with a write high-watermarks

Original mail:

   the logic that handles write watermarks in "bio_bufferevent_write"
   is not working. It currently doesn't write any data if the high
   watermark is *above* the amount of data to write (i.e. when there
   is actually enough room available).

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Sun, 3 Jul 2011 01:50:49 +0000 (21:50 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix a few warnings on OpenBSD
Nicholas Marriott [Sun, 3 Jul 2011 01:49:07 +0000 (21:49 -0400)]
Fix a few warnings on OpenBSD

- redeclaration of dst_size

- arpa/inet.h requires netinet/in.h first

- don't use a local with the same name as a global - it isn't needed so
  remove it

13 years agoFix AIX build issue with TAILQ_FOREACH definition
Nick Mathewson [Wed, 22 Jun 2011 15:22:35 +0000 (11:22 -0400)]
Fix AIX build issue with TAILQ_FOREACH definition

Reported by Lawnstein Chan.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Tue, 21 Jun 2011 14:07:04 +0000 (10:07 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoDon't install event_rpcgen.py when --disable-libevent-install is used
Harlan Stenn [Tue, 21 Jun 2011 14:05:28 +0000 (10:05 -0400)]
Don't install event_rpcgen.py when --disable-libevent-install is used

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Thu, 16 Jun 2011 17:28:40 +0000 (13:28 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoMerge branch '20_kqueue_badf' into patches-2.0
Nick Mathewson [Thu, 16 Jun 2011 17:19:43 +0000 (13:19 -0400)]
Merge branch '20_kqueue_badf' into patches-2.0

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Tue, 14 Jun 2011 19:15:43 +0000 (15:15 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoDon't break when building tests from git without python installed
Nick Mathewson [Tue, 14 Jun 2011 18:37:49 +0000 (14:37 -0400)]
Don't break when building tests from git without python installed

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Sat, 11 Jun 2011 05:41:19 +0000 (01:41 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

Conflicts:
test/tinytest.c

13 years agoSimplify windows commandname logic in tinytest
Nick Mathewson [Sat, 11 Jun 2011 05:26:54 +0000 (01:26 -0400)]
Simplify windows commandname logic in tinytest

Instead of using a dup'd pointer, let's use a static array, so we
don't need to free it.  This patch also makes tinytest build on
non-windows again.

13 years agoFix tinytest invocation from windows shell
Ed Day [Sat, 11 Jun 2011 04:49:24 +0000 (00:49 -0400)]
Fix tinytest invocation from windows shell

Original post:

  This post is in response to a posting last December on a Windows
  regression fork failure ([Libevent-users] Re: Libevent 2.0.10-stable
  is released by Dongsheng Song).  I noticed the question was not
  answered and I recently experienced the same error myself when
  trying to run the Windows regression tests myself.

  I checked the return status from the CreateProcess call and found it
  was "file not found".  This led me to look at the command-line I was
  using which was .\regress in a Visual Studio 2008 command prompt
  window.  Windows could not find the file because it did not have the
  .exe extension on the end.  The code that builds the command should
  be modified to ensure the extension is present.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Wed, 8 Jun 2011 21:38:17 +0000 (17:38 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoCheck if the `evhttp_new_object' function in `http.c' returns NULL.
Mansour Moufid [Fri, 27 May 2011 22:40:31 +0000 (18:40 -0400)]
Check if the `evhttp_new_object' function in `http.c' returns NULL.

13 years agoReport kqueue ebadf, epipe, and eperm as EV_READ events
Nick Mathewson [Wed, 8 Jun 2011 18:56:19 +0000 (14:56 -0400)]
Report kqueue ebadf, epipe, and eperm as EV_READ events

When asked to add one side of a pipe, and the other side has been
closed, kqueue on NetBSD will say EBADF; kqueue on FreeBSD will say
EPIPE, and kqueue on OpenBSD will say EPERM.  So treat all of these
as EV_READ events, to give the user an opportunity to notice that
the pipe is closed.

Diagnosed by Nicholas Marriott and Dale Rahn; based on a patch by
Nicholas Marriott.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Wed, 8 Jun 2011 18:29:36 +0000 (14:29 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoReplace an assertion for event_base_free(NULL) with a check-and-warn
Nick Mathewson [Wed, 8 Jun 2011 18:24:45 +0000 (14:24 -0400)]
Replace an assertion for event_base_free(NULL) with a check-and-warn

event_base_free(NULL) means "free the current event base".
Previously, it would assert if there was no 'current' base.  Now it
just warns and returns.

Reported by Gilad Benjamini

13 years agoAdd some missing checks for mm_calloc failures
Nick Mathewson [Wed, 8 Jun 2011 18:18:41 +0000 (14:18 -0400)]
Add some missing checks for mm_calloc failures

Found by Gilad Benjamini

13 years agoRemove a needless branch in evbuffer_drain()
Nick Mathewson [Wed, 8 Jun 2011 17:32:47 +0000 (13:32 -0400)]
Remove a needless branch in evbuffer_drain()

Found by Gilad Benjamini; see June 2011 thread "Dead or wrong code".

13 years agoFix a bug in the improved EOL_CRLF code
Nick Mathewson [Mon, 6 Jun 2011 19:33:27 +0000 (15:33 -0400)]
Fix a bug in the improved EOL_CRLF code

When searching for a CRLF, it would find an LF, then look for a
preceding CR if not at the start of the buffer.  That's fine when
we're starting from the beginning of the buffer, but if we're starting
at (say) byte 100, and we have that byte == LF, we shouldn't check for
a CR at byte 99.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 6 Jun 2011 19:26:37 +0000 (15:26 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix incorrect results from evbuffer_search_eol(EOL_LF)
Nick Mathewson [Mon, 6 Jun 2011 19:11:28 +0000 (15:11 -0400)]
Fix incorrect results from evbuffer_search_eol(EOL_LF)

Our evbuffer_strchr() function [which was only used for
search_eol(EOL_LF) could give incorrect results if it found its answer
in the first chunk but didn't start searching from the front of the
chunk.

Also, this patch adds unit tests for evbuffer_search_eol, particularly
in those cases that evbuffer_readln() tests didn't exercise.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Sun, 5 Jun 2011 01:40:55 +0000 (21:40 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

Conflicts:
Makefile.am
WIN32-Code/event2/event-config.h
configure.in
test/regress_ssl.c

13 years agoBump version to 2.0.12-stable-dev
Nick Mathewson [Sun, 5 Jun 2011 01:36:34 +0000 (21:36 -0400)]
Bump version to 2.0.12-stable-dev

13 years agoMerge branch 'patches-2.0' of ssh://levent.git.sourceforge.net/gitroot/levent/libeven...
Nick Mathewson [Sun, 5 Jun 2011 01:12:53 +0000 (21:12 -0400)]
Merge branch 'patches-2.0' of ssh://levent.git.sourceforge.net/gitroot/levent/libevent into patches-2.0

13 years agotweak date on changelog
Nick Mathewson [Sun, 5 Jun 2011 01:11:09 +0000 (21:11 -0400)]
tweak date on changelog

13 years agoMerge branch 'patches-2.0' of ssh://levent.git.sourceforge.net/gitroot/levent/libeven...
Nick Mathewson [Sat, 4 Jun 2011 14:34:14 +0000 (10:34 -0400)]
Merge branch 'patches-2.0' of ssh://levent.git.sourceforge.net/gitroot/levent/libevent into patches-2.0

13 years agoChangelog and new credits for 2.0.12-stable release-2.0.12-stable
Nick Mathewson [Fri, 3 Jun 2011 21:08:30 +0000 (17:08 -0400)]
Changelog and new credits for 2.0.12-stable

13 years agoBump version to 2.0.12-stable. Not release just yet
Nick Mathewson [Fri, 3 Jun 2011 21:08:14 +0000 (17:08 -0400)]
Bump version to 2.0.12-stable.  Not release just yet

13 years agoFix regress_ssl.c build on openbsd
Nick Mathewson [Fri, 3 Jun 2011 21:06:17 +0000 (17:06 -0400)]
Fix regress_ssl.c build on openbsd

13 years agoFix windows file segment mappings
Nick Mathewson [Thu, 2 Jun 2011 21:07:40 +0000 (17:07 -0400)]
Fix windows file segment mappings

Instead of mapping enough bytes for each segment, we were failing to
take into account the slop created by rounding the segment position
down to the nearest page.

Should fix bug 3142394 found by Sebastian Hahn.

13 years agoAvoid a segfault when all methods are disabled or broken
Nick Mathewson [Wed, 1 Jun 2011 21:27:28 +0000 (17:27 -0400)]
Avoid a segfault when all methods are disabled or broken

13 years agoTry to squeeze a little more speed out of EVBUFFER_EOL_CRLF
Nick Mathewson [Wed, 1 Jun 2011 18:19:13 +0000 (14:19 -0400)]
Try to squeeze a little more speed out of EVBUFFER_EOL_CRLF

13 years agoMerge remote-tracking branch 'github/master'
Nick Mathewson [Wed, 1 Jun 2011 18:02:56 +0000 (14:02 -0400)]
Merge remote-tracking branch 'github/master'

13 years agoMerge pull request #17 from minaguib/master
Nick Mathewson [Wed, 1 Jun 2011 18:02:48 +0000 (11:02 -0700)]
Merge pull request #17 from minaguib/master

Improve speed of EVBUFFER_EOL_CRLF

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Wed, 1 Jun 2011 17:52:27 +0000 (13:52 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agocygwin: make it possible to build DLLs
Nick Mathewson [Wed, 1 Jun 2011 17:48:02 +0000 (13:48 -0400)]
cygwin: make it possible to build DLLs

Patch from Brian Koehmstedt

13 years agoRoughly 20% speed increase when line-draining a buffer using EVBUFFER_EOL_CRLF
Mina Naguib [Tue, 31 May 2011 17:56:56 +0000 (13:56 -0400)]
Roughly 20% speed increase when line-draining a buffer using EVBUFFER_EOL_CRLF

13 years agoMerge branch '21_evport_improved'
Nick Mathewson [Mon, 30 May 2011 16:10:26 +0000 (12:10 -0400)]
Merge branch '21_evport_improved'

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 30 May 2011 16:09:18 +0000 (12:09 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoMerge branch '20_select_nfds' into patches-2.0
Nick Mathewson [Mon, 30 May 2011 16:06:36 +0000 (12:06 -0400)]
Merge branch '20_select_nfds' into patches-2.0

13 years agoFix a fencepost bug in the select backend
Nick Mathewson [Mon, 30 May 2011 15:53:19 +0000 (11:53 -0400)]
Fix a fencepost bug in the select backend

This bug would sometimes lead us to looking one bit off the end of
the fdset arrays, and trying to activate a (nonexistent) event if
that bit was set.

Found by Harlann Stenn.  Fixes a test failure on OpenSolaris.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Sat, 28 May 2011 03:33:40 +0000 (23:33 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoMake the new http_connect_fail_test use a multicast addr, not broadcast
Nick Mathewson [Sat, 28 May 2011 03:28:17 +0000 (23:28 -0400)]
Make the new http_connect_fail_test use a multicast addr, not broadcast

Turns out that FreeBSD does _not_ give a ENETUNREACH error when
told to make a TCP socket to 255.255.255.255, but it is quite happy
to do so for 239.10.20.30.  So that's what we'll do.

Found by Robert Ransom and Dave Hart.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Sat, 28 May 2011 03:19:11 +0000 (23:19 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

Conflicts:
evthread_win32.c
listener.c

13 years agoInitializeCriticalSectionAndSpinCount requires _WIN32_WINNT >= 0x0403.
Peter Rosin [Thu, 26 May 2011 08:10:57 +0000 (10:10 +0200)]
InitializeCriticalSectionAndSpinCount requires _WIN32_WINNT >= 0x0403.

13 years agoAllow base-notification functions to exist without setting an fd
Nick Mathewson [Sat, 28 May 2011 02:54:16 +0000 (22:54 -0400)]
Allow base-notification functions to exist without setting an fd

The kqueue and evport backends can make good use of this.

13 years agoReenable main/many_events_slow_add for evport in 2.1
Nick Mathewson [Fri, 27 May 2011 19:31:40 +0000 (15:31 -0400)]
Reenable main/many_events_slow_add for evport in 2.1

The various evport fixes should let it actually work again

13 years agoevport: Remove artificial low limit on max events per getn call
Nick Mathewson [Fri, 27 May 2011 18:41:24 +0000 (14:41 -0400)]
evport: Remove artificial low limit on max events per getn call

Previously, evport could only handle up to 8 events per time through
the loop.  This would impose an artificially high number of syscalls
on us to retrieve a large number of events.

This code allows the EVLOOP_* flags to work more similarly to how
they do on other platforms (up to 4096 events per syscall).  Dispite
dire warning (from 2006), doing this won't impose a big incremental
RAM penalty: if you have 4096 events firing at once, you necessarily
have a proportional number of events pending, and their associated
data structures are already costing a good bit of RAM.

This patch makes the main/many_events_slow_add test pass again.

13 years agoevport: don't scan more events in ed_pending than needed
Nick Mathewson [Fri, 27 May 2011 18:28:39 +0000 (14:28 -0400)]
evport: don't scan more events in ed_pending than needed

13 years agoevport: Use portev_user to remember fdinfo struct
Nick Mathewson [Fri, 27 May 2011 18:22:50 +0000 (14:22 -0400)]
evport: Use portev_user to remember fdinfo struct

13 years agoevport: Remove a linear search over recent events when reactivating them
Nick Mathewson [Fri, 27 May 2011 18:15:32 +0000 (14:15 -0400)]
evport: Remove a linear search over recent events when reactivating them

13 years agoevport: use evmap_io to track fdinfo status. Should save time and RAM.
Nick Mathewson [Fri, 27 May 2011 17:44:41 +0000 (13:44 -0400)]
evport: use evmap_io to track fdinfo status. Should save time and RAM.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Fri, 27 May 2011 19:09:54 +0000 (15:09 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix a couple of signed/unsigned warnings in http.c
Nick Mathewson [Fri, 27 May 2011 19:08:25 +0000 (15:08 -0400)]
Fix a couple of signed/unsigned warnings in http.c

13 years agoDisable main/many_events_slow_add with evport backend
Nick Mathewson [Fri, 27 May 2011 18:57:55 +0000 (14:57 -0400)]
Disable main/many_events_slow_add with evport backend

In 2.0 and earlier, evport only reports up to 8 events at a time, which
confuses this test badly.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Thu, 26 May 2011 21:45:54 +0000 (17:45 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix compilation.
Nick Mathewson [Thu, 26 May 2011 21:43:17 +0000 (17:43 -0400)]
Fix compilation.

13 years agoMerge branch 'intcmp_overflow_fixes' into patches-2.0
Nick Mathewson [Thu, 26 May 2011 21:34:15 +0000 (17:34 -0400)]
Merge branch 'intcmp_overflow_fixes' into patches-2.0

13 years agoupdated EV_S(s)IZE definitions
Mark Ellzey [Wed, 25 May 2011 22:52:07 +0000 (18:52 -0400)]
updated EV_S(s)IZE definitions

13 years agoAdded overflow checks in evhttp_read_body and evhttp_get_body
Mark Ellzey [Wed, 25 May 2011 18:31:09 +0000 (14:31 -0400)]
Added overflow checks in evhttp_read_body and evhttp_get_body

13 years agoAdded several checks for under/overflow conditions in evhttp_handle_chunked_read
Mark Ellzey [Wed, 25 May 2011 16:58:59 +0000 (12:58 -0400)]
Added several checks for under/overflow conditions in evhttp_handle_chunked_read

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Thu, 26 May 2011 01:20:31 +0000 (21:20 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoAlways use evutil_snprintf, even if OS provides it
Sebastian Hahn [Thu, 26 May 2011 00:05:54 +0000 (02:05 +0200)]
Always use evutil_snprintf, even if OS provides it

In test/tinytest_local.h we can't redefine snprintf if the OS has it
defined already.

13 years agoDo not define WIN32 in Makefile.nmake
Peter Rosin [Wed, 25 May 2011 23:54:44 +0000 (19:54 -0400)]
Do not define WIN32 in Makefile.nmake

13 years agoIn configure, test for _WIN32 not WIN32.
Peter Rosin [Wed, 25 May 2011 23:54:33 +0000 (19:54 -0400)]
In configure, test for _WIN32 not WIN32.

13 years agoUse "_WIN32", not WIN32: it's standard and we don't need to fake it
Nick Mathewson [Wed, 25 May 2011 23:50:56 +0000 (19:50 -0400)]
Use "_WIN32", not WIN32: it's standard and we don't need to fake it

This patch was automatically generated with perl.

Based on a patch by Peter Rosin.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Wed, 25 May 2011 23:46:14 +0000 (19:46 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoUse evutil_gettimeofday instead of relying on the system gettimeofday.
Peter Rosin [Wed, 25 May 2011 13:11:01 +0000 (15:11 +0200)]
Use evutil_gettimeofday instead of relying on the system gettimeofday.

13 years agoFix winsock2.h #include issues with MSVC
Peter Rosin [Wed, 25 May 2011 09:04:43 +0000 (11:04 +0200)]
Fix winsock2.h #include issues with MSVC

Define WIN32_LEAN_AND_MEAN, so that windows.h does not bring in
winsock.h which in turn makes it impossible to #include <winsock2.h>
(at least with MSVC)

13 years agoMake sure TINYTEST_LOCAL is defined when building tinytest.c
Peter Rosin [Wed, 25 May 2011 22:03:38 +0000 (00:03 +0200)]
Make sure TINYTEST_LOCAL is defined when building tinytest.c

13 years agounistd.h and sys/time.h might not exist.
Peter Rosin [Wed, 25 May 2011 08:58:48 +0000 (10:58 +0200)]
unistd.h and sys/time.h might not exist.

13 years agoMSVC does not provide S_ISDIR, so provide it manually.
Peter Rosin [Wed, 25 May 2011 08:57:16 +0000 (10:57 +0200)]
MSVC does not provide S_ISDIR, so provide it manually.

13 years agoBring in the compile script from automake, if needed.
Peter Rosin [Wed, 25 May 2011 08:56:32 +0000 (10:56 +0200)]
Bring in the compile script from automake, if needed.

13 years agoMake the tests build when OpenSSL is not available.
Peter Rosin [Wed, 25 May 2011 08:55:41 +0000 (10:55 +0200)]
Make the tests build when OpenSSL is not available.

Don't #define HAVE_OPENSSL (to zero) when OpenSSL is not available.
Code written as #ifdef HAVE_OPENSSL do not expect that.

13 years agoLink with -lshell32 and -ladvapi32 on Win32.
Peter Rosin [Wed, 25 May 2011 08:54:06 +0000 (10:54 +0200)]
Link with -lshell32 and -ladvapi32 on Win32.

SHGetSpecialFolderPath is in Shell32.dll and the RegOpenKey (et al) and
CryptGenRandom (et al) functions are in -ladvapi32.dll. MinGW is "nice"
and brings those in automatically, but specify them explicitly for
other tool chains.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Wed, 25 May 2011 20:52:50 +0000 (16:52 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix new warnings from GCC 4.6
Nick Mathewson [Wed, 25 May 2011 20:51:25 +0000 (16:51 -0400)]
Fix new warnings from GCC 4.6

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 23 May 2011 22:25:05 +0000 (18:25 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoPrevent size_t overflow in evhttp_htmlescape.
Mansour Moufid [Mon, 23 May 2011 22:01:24 +0000 (18:01 -0400)]
Prevent size_t overflow in evhttp_htmlescape.

Modified the `html_replace' function so that it returns the length of
the replacement string instead of the string itself. This is used to
easily check for overflows of the `new_size' variable in the first for
loop of the `evhttp_htmlescape' function, and thus potential out of
bounds writes in the second for loop (if an overflow occurs in
new_size, then new_size < old_size). Also check that new_size + 1
doesn't overflow in mm_malloc(new_size + 1).

Removed the `scratch_space' variable from the `evhttp_htmlescape'
function since it wasn't actually used; also removed the `buf'
variable from the `evhttp_htmlescape' function since it was only used
by `scratch_space'.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 23 May 2011 21:50:45 +0000 (17:50 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix a bug that prevented us from configuring IPv6 nameservers.
Nick Mathewson [Mon, 23 May 2011 21:45:14 +0000 (17:45 -0400)]
Fix a bug that prevented us from configuring IPv6 nameservers.

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Mon, 23 May 2011 05:44:05 +0000 (01:44 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoTest case for 0848814ac49616
Kevin Ko [Mon, 23 May 2011 05:40:05 +0000 (01:40 -0400)]
Test case for 0848814ac49616

 "I'm not sure if you'll like my use of the limited broadcast address
  for simulating an ENETUNREACH error with a TCP connection, but it's
  the best that I could think of.  Basically, we want to trigger a
  non-EINPROGRESS error in evutil_socket_connect() immediately at the
  connect() in order to bring about the assertion in the
  evhttp_connection_fail() error handling code."

13 years agoMerge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson [Sat, 21 May 2011 03:24:43 +0000 (23:24 -0400)]
Merge remote-tracking branch 'origin/patches-2.0'

13 years agoFix failing assertion introducd in commit 0d6622e
Kevin Ko [Sat, 21 May 2011 03:23:44 +0000 (23:23 -0400)]
Fix failing assertion introducd in commit 0d6622e

Patch in question:
 - Fix the case when failed evhttp_make_request() leaved request in the queue.
 - http://levent.git.sourceforge.net/git/gitweb.cgi?p=levent/libevent;a=commit;h=0d6622e

The above patch introduces a failing assertion in
evhttp_connection_fail().  This happens because the patch defers the
assignment of the outstanding request to the evcon->requests list,
while evhttp_connection_fail() assumes that the request lies in the
list.

One scenario in which this can happen is when the request list is
empty and a connection is made to an unreachable host.  The assertion
will then fail after bufferevent_socket_connect() errors out (with
ENETUNREACH in my case).