697 Commits

Author SHA1 Message Date
Greg Hazel
b618204216 fix #73 and fix http_connection_fail_test to catch it 2013-02-14 09:54:56 -08:00
Nick Mathewson
a55514eeed Avoid using top_srcdir in TESTS-new automakes do not like this 2013-02-08 22:08:18 -05:00
Nick Mathewson
f38e078868 Make ssl version check in unit tests work 2012-11-18 01:36:03 -05:00
Nick Mathewson
f3009e48c7 Make rpcgen_wrapper.sh work on systems without a "python2" binary 2012-11-16 10:28:19 -05:00
Nick Mathewson
ac009f9245 Warn when openssl version in unit test mismatches compiled version. 2012-11-15 11:43:45 -05:00
Nick Mathewson
c2f30863e2 Fix renegotiation test to work around openssl 1.0.1 bug
There's a bug in openssl 1.0.1 where TLS1.1 and TLS1.2 can't
renegotiate with themselves.  When testing renegotiation with OpenSSL
>=1.0.1 and <1.0.1d, disable those protocols.
2012-11-15 11:43:45 -05:00
Nick Mathewson
94866c2763 Compile without warnings on mingw64
This is mostly a matter of catching cases where we were still
assuming that evutil_socket_t could be used as an int.
2012-11-01 17:56:06 -04:00
Nick Mathewson
a2006c0087 Move assignment outside tt_assert in ssl unit tests. Appeases coverity. 2012-07-26 10:37:47 -04:00
Nick Mathewson
b9e7329751 Add checks to various return values in unit tests. Found by coverity 2012-07-26 10:37:13 -04:00
Nick Mathewson
6355b2a4ca Remove unused variable; spotted by coverity 2012-07-26 10:16:47 -04:00
Nick Mathewson
3cde5bf57a Avoid more crashes/bad calls in unit tests; found by coverity 2012-07-26 10:04:43 -04:00
Nick Mathewson
f021c3d762 Add some missing null checks to unit tests; found by coverity 2012-07-26 09:59:47 -04:00
Nick Mathewson
270f279fb5 Fix resource leaks in the unit tests; found by coverity 2012-07-26 09:53:20 -04:00
Nick Mathewson
4f3732d75e Fix various check-after-dereference issues in unit tests: found by coverity 2012-07-26 09:35:43 -04:00
Nick Mathewson
f1ce15d936 Set umask before calling mkstemp in unit tests. Found by coverity 2012-07-25 16:18:33 -04:00
Nick Mathewson
2259777cc8 Fix possible uninitialized read in dns regression tests. Found by coverity. 2012-07-25 16:05:36 -04:00
Nick Mathewson
555334670a Remove deadcode in http regression tests. Found by coverity. 2012-07-25 15:59:50 -04:00
Ross Lagerwall
3b2529acf2 Fix a couple of memory leaks (found with Valgrind). 2012-06-06 21:57:12 +02:00
Nick Mathewson
e06206ebd8 Oops; fix the *right* windows compile issue 2012-05-03 12:15:11 -04:00
Nick Mathewson
be7a0be816 Fix win32 build issues: sleep, pid_t 2012-05-03 12:05:52 -04:00
Nick Mathewson
30f0671526 Merge remote-tracking branch 'github/20_active_prio_inv' into patches-2.0 2012-04-30 21:45:43 -04:00
Nick Mathewson
b3887cdf3b Work-around a stupid gcov-breaking bug in OSX 10.6
This only affects the unit tests.

Fix found at http://rachelbythebay.com/w/2011/07/12/forkcrash/

(Backport from 2.1)
2012-04-30 21:17:26 -04:00
Nick Mathewson
2bfda4012c If a higher-priority event becomes active, don't continue running events of the current priority.
Bug found by Ralph Castain.
2012-04-30 17:30:48 -04:00
Nick Mathewson
dfd808cbad If time has jumped so we'd reschedule a periodic event in the past, schedule it for the future instead
Fixes an issue reported on libevent-users in the thread "a dead
looping bug when changing system time backward". Previously, if time
jumped forward 1 hour[*] and we had a one-second periodic timer event,
that event would get invoked 3600 times.  That's almost certainly not
what anybody wants.

In a future version of Libevent, we should expose the amount of time
that the callbac kwould have been invoked somehow.

[*] Forward time jumps can happen with nonmonotonic clocks, or with
clocks that jump on suspend/resume.  It can also happen from
Libevent's point of view if the user exits from event_base_loop() and
doesn't call it again for a while.
2012-04-19 18:25:59 -04: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
e49e289129 Update copyright notices to 2012 2012-02-10 17:29:53 -05:00
Nick Mathewson
9f9e259fda Better workaround for Linux 3.2 edge-triggered epoll bug
On further investigation, it appears that this problem is limited to
AF_UNIX sockets, so let's just do the test on AF_INET sockets.
2012-01-26 15:04:24 -05:00
Nick Mathewson
5408ff3b89 Oops:remove an accidentally committed "sleep(1)" in a unit test 2012-01-24 11:16:26 -05:00
Nick Mathewson
dab91877bc Workaround in the unit tests for an apparent epoll bug in Linux 3.2 2012-01-24 11:04:19 -05:00
Nick Mathewson
3312b02036 Check event_base correctness at end of each unit test 2012-01-23 17:43:35 -05:00
Nick Mathewson
27737d55ae Add function to check referential integrity of an event_base 2012-01-21 12:55:15 -05:00
Nick Mathewson
cba48c7d46 Fix a race condition in the dns/bufferevent_connect_hostname test.
As originally written, the test would only pass if the accept()
callbacks for the evconnlistener were all invoked before the last of
the CONNECTED/ERROR callbacks for the connecting/resolving bufferevent
had its call to event_base_loopexit() complete.  But this was only
accidentally true in 2.0, and might not be true at all in 2.1 where
we schedule event_base_once() callbacks more aggressively.

Found by Sebastian Hahn.
2012-01-09 16:44:53 -05:00
Zack Weinberg
c986f2321d Fix behavior of evbuffer_peek(buf,-1,NULL,NULL,0)
(Patch altered by nickm to not affect the behavior of
evbuffer_peek(buf,-1,NULL,vec,n_vec).)
2011-12-08 14:31:09 -05:00
Colin Watt
19277763b2 Fix a silly compilation error with the sun compiler
Apparently, other compilers were allowing "return free(x)" in a
function returning void.
2011-12-06 13:35:54 -05:00
Nick Mathewson
b17b0eec02 Fix DNS memleak checks when running with malloc-replacement/debugging disabled 2011-11-15 17:11:42 -05:00
Greg Hazel
7eb52eb85e improve test to remove at least one buffer from src 2011-11-02 22:47:02 -04:00
Greg Hazel
90bd620fa3 unit test for remove_buffer bug 2011-11-02 13:40:16 -04:00
Nick Mathewson
3c824bd334 Update copyright dates to 2011. 2011-10-24 13:18:09 -04:00
Nick Mathewson
5e42202d59 Style and comment tweaks for dns/leak* tests 2011-10-19 22:41:11 -04:00
Leonid Evdokimov
f7841bfc70 Test for commit aff6ba1 2011-10-19 22:34:09 -04:00
Leonid Evdokimov
21a08d6869 Empty DNS reply with OK status is another way to say NODATA.
Sometimes DNS reply has nothing but query section. It does not look like
error, so it should be treated as NODATA with TTL=0 as soon as there is
no SOA record to deduce negative TTL from.
2011-10-19 22:15:35 -04:00
Leonid Evdokimov
d58c15ee84 Tests for 94fba5b and f72e8f6 2011-10-19 22:15:29 -04:00
Nick Mathewson
706aa5f416 Merge remote-tracking branch 'github/20_addfile_ssl' into patches-2.0 2011-10-06 15:11:50 -04:00
Nick Mathewson
2b768479e4 Make write-checking fixes use tt_fail_perror 2011-10-03 12:45:36 -04:00
Mark Ellzey
c3b62fd7fd Fixed compiler warnings for unchecked read/write calls. 2011-10-03 12:40:48 -04:00
Nick Mathewson
0ba0af9c6c Prefer mmap to sendfile unless a DRAINS_TO_FD flag is set. Allows add_file to work with SSL.
The sendfile() implementation for evbuffer_add_file is potentially more
efficient, but it has a problem: you can only use it to send bytes over
a socket using sendfile().  If you are writing bytes via SSL_send() or
via a filter, or if you need to be able to inspect your buffer, it
doesn't work.

As an easy fix, this patch disables the sendfile-based implementation of
evbuffer_add_file on an evbuffer unless the user sets a new
EVBUFFER_FLAG_DRAINS_TO_FD flag on that evbuffer, indicating that the
evbuffer will not be inspected, but only written out via
evbuffer_write(), evbuffer_write_atmost(), or drained with stuff like
evbuffer_drain() or evbuffer_add_buffer().  This flag is off by
default, except for evbuffers used for output on bufferevent_socket.

In the future, it could be interesting to make a best-effort file
segment implementation that tries to send via sendfile, but mmaps on
demand.  That's too much complexity for a stable release series, though.
2011-09-29 10:32:16 -04:00
Sergey Avseyev
9ae061acca le-proxy and regress depend on openssl directly 2011-09-16 09:42:01 -04:00
Nick Mathewson
0ff2c5a922 Have test-ratelim.c support IOCP 2011-08-28 14:39:12 -04:00
Nick Mathewson
2f51dc0311 Cleanup on 7c11e51e1ab: fix strtol usage 2011-08-28 14:03:10 -04:00