Commit Graph

11472 Commits

Author SHA1 Message Date
Karsten Loesing
457bebe01a Fix a couple of smaller issues with gathering statistics.
- Avoid memmoving 0 bytes which might lead to compiler warnings.

- Don't require relays to be entry node AND bridge at the same to time to
  record clients.

- Fix a memory leak when writing dirreq-stats.

- Don't say in the stats files that measurement intervals are twice as long
  as they really are.

- Reduce minimum observation time for requests to 12 hours, or we might
  never record usage.

- Clear exit stats correctly after writing them, or we accumulate old stats
  over time.

- Reset interval start for buffer stats, too.
2009-09-24 21:58:56 +02:00
Nick Mathewson
a3f1da2ec0 Fix compilation on OpenSSLs with unusual state lists.
"Unusual" in this context means "not the same as nickm's."  We should grow a
better list later.

(Also, move TLS state table to a separate header.)
2009-09-24 13:00:28 -04:00
Nick Mathewson
b8b2935367 Debugging logs for TLS handshake
The big change is to add a function to display the current SSL handshake
state, and to log it everywhere reasonable.  (A failure in
SSL23_ST_CR_SRVR_HELLO_A is different from one in
SSL3_ST_CR_SESSION_TICKET_A.)

This patch also adds a new log domain for OR handshaking, so you can pull out
all the handshake log messages without having to run at debug for everything.
For example, you'd just say "log notice-err [handshake]debug-err file
tor.log".
2009-09-24 12:31:22 -04:00
Roger Dingledine
52fa4f6428 Merge commit 'debian-tor-0.2.2.3-alpha-1' 2009-09-23 05:05:45 -04:00
Roger Dingledine
eed5cae9d1 downgrade a log notice at startup
This was the only log notice that happened during other
tor invocations, like --verify-config and --list-fingerprint.
Plus, now we think it works, so no need to hear about it.
2009-09-23 04:59:05 -04:00
Peter Palfrader
c7d0711df2 Merge branch 'debian-merge' into debian
* debian-merge:
  New upstream version
  finishing touches on the changelog
  bump to 0.2.2.3-alpha, plus add a changelog for bug 1103
  Be more robust to bad circwindow values
  Fix Bug 1103.
  Bump version to 0.2.2.2-alpha-dev
2009-09-23 10:33:12 +02:00
Peter Palfrader
3573b36dfc New upstream version 2009-09-23 10:27:56 +02:00
Peter Palfrader
0b2822c7a2 Merge commit 'tor-0.2.2.3-alpha' into debian-merge
* commit 'tor-0.2.2.3-alpha':
  finishing touches on the changelog
  bump to 0.2.2.3-alpha, plus add a changelog for bug 1103
  Be more robust to bad circwindow values
  Fix Bug 1103.
  Bump version to 0.2.2.2-alpha-dev
2009-09-23 10:27:34 +02:00
Nick Mathewson
2d906e6554 Changelog for unit test refactoring. 2009-09-23 00:49:49 -04:00
Nick Mathewson
5f20b0849c Do not distribute tinytest_demo.c in the tarball 2009-09-23 00:24:43 -04:00
Sebastian Hahn
81895dbd52 Our test script moved from src/or/test to src/test/test.
Update the HACKING document and the cross compilation helper
2009-09-23 00:24:43 -04:00
Nick Mathewson
cb52e17d3d Carve out unrelated parts of test_dir_formats 2009-09-23 00:24:43 -04:00
Nick Mathewson
d58a6bb137 Make "make test" depend on "all". 2009-09-23 00:24:43 -04:00
Nick Mathewson
fa693118b1 Split directory tests into their own module.
(Also, clean up some whitespace.)
2009-09-23 00:24:43 -04:00
Nick Mathewson
050545405a Split test_util() into smaller functions. 2009-09-23 00:24:43 -04:00
Nick Mathewson
d9d0813809 Split general util and address tests into their own files. 2009-09-23 00:24:43 -04:00
Nick Mathewson
d2857d524c Split container tests into their own module 2009-09-23 00:24:43 -04:00
Nick Mathewson
cea1225199 Split crypto tests into a separate module. 2009-09-23 00:24:43 -04:00
Sebastian Hahn
410f31e576 Remove a warning on ./autogen.sh 2009-09-23 00:24:43 -04:00
Nick Mathewson
da1aa66f70 Move testing code into new src/test directory. 2009-09-23 00:24:43 -04:00
Nick Mathewson
d4b54549b8 Refactor unit tests to use the tinytest framework.
"Tinytest" is a minimalist C unit testing framework I wrote for
Libevent.  It supports some generally useful features, like being able
to run separate unit tests in their own processes.

I tried to do the refactoring to change test.c as little as possible.
Thus, we mostly don't call the tinytest macros directly.  Instead, the
test.h header is now a wrapper on tinytest.h to make our existing
test_foo() macros work.

The next step(s) here will be:
  - To break test.c into separate files, each with its own test group.
  - To look into which things we can test
  - To refactor the more fiddly tests to use the tinytest macros
    directly and/or run forked.
  - To see about writing unit tests for things we couldn't previously
    test without forking.
2009-09-23 00:24:43 -04:00
Nick Mathewson
1c2d7732f0 Bump version to 0.2.2.3-alpha-dev 2009-09-23 00:24:37 -04:00
Roger Dingledine
0f3417d1db finishing touches on the changelog 2009-09-23 00:13:57 -04:00
Roger Dingledine
8e3af72ed0 bump to 0.2.2.3-alpha, plus add a changelog for bug 1103 2009-09-22 22:15:56 -04:00
Roger Dingledine
0d13e0ed14 Be more robust to bad circwindow values
If the networkstatus consensus tells us that we should use a
negative circuit package window, ignore it. Otherwise we'll
believe it and then trigger an assert.

Also, change the interface for networkstatus_get_param() so we
don't have to lookup the consensus beforehand.
2009-09-22 22:09:33 -04:00
Nick Mathewson
6acfa31d59 Merge commit 'mikeperry/circuittimeout-1103' 2009-09-21 23:35:49 -04:00
Mike Perry
fd7454f9e3 Fix Bug 1103.
Don't pass in a quantile that is too high during pretimeout
calcualtion.
2009-09-21 20:01:20 -07:00
Nick Mathewson
5a9c9aa526 Merge commit 'debian-tor-0.2.2.2-alpha-1' 2009-09-21 16:06:01 -04:00
Nick Mathewson
52b75c9a55 Bump version to 0.2.2.2-alpha-dev 2009-09-21 15:51:08 -04:00
Peter Palfrader
6332c51f73 Build debian's micro-revision into the binary
If we have a debian/micro-revision.i, replace the one in src/or
with our copy so that this will be the revision that ends up in
the binary.  This is an informational only version string, but
it'd be kinda nice if it was (more) accurate nonetheless.

Of course this won't help if people manually patch around but
it's still preferable to claiming we are exactly upstream's source.

If we are building directly out of a git tree, update
debian/micro-revision.i in the clean target.
2009-09-21 14:51:26 +02:00
Peter Palfrader
06211f2b90 Remove common_sha1.i and or_sha1.i in clean
The files src/common/common_sha1.i src/or/or_sha1.i get changed during
the build - they contain the checksums of the individual files that end
up in the binary.  Of couse changes only end up in the debian diff.gz
after building a second time in the same directory.  So, remove those
files in clean to get both a cleaner diff.gz and idempotent builds.
2009-09-21 13:39:40 +02:00
Peter Palfrader
b69f6fe82d Merge branch 'debian-merge' into debian
* debian-merge: (95 commits)
  New upstream version: 0.2.2.2-alpha
  downgrade a log severity, since this event has been known
  Update to the "September 4 2009" ip-to-country file.
  bump to 0.2.2.2-alpha
  Revert "Teach connection_ap_can_use_exit about Exclude*Nodes"
  fix grammar / add changelog for the torify commit
  Fix compile on Snow Leopard
  Fix build warnings on OSX 10.5.8
  Change the condition on the nonlive timeout counting.
  Add a couple of time helper functions.
  Fix typos and comments, plus two bugs
  Implement and document new network liveness algorithm.
  Fix some precision-related asserts in unit tests.
  replace contrib/auto-naming with a readme saying where it went
  clarify our rules for assigning the Named flag
  disable the end of circuitbuildtimeout units tests
  draw in a lot of 0.2.1.20 changelog items into 0.2.2.2-alpha
  Fix compile on freebsd
  Let our config abbreviations rewrite more than once
  a mish-mash of stuff in my sandbox
  ...
2009-09-21 13:16:44 +02:00
Peter Palfrader
20225895a3 New upstream version: 0.2.2.2-alpha 2009-09-21 13:16:05 +02:00
Peter Palfrader
a9c45754e0 Merge commit 'tor-0.2.2.2-alpha' into debian-merge
* commit 'tor-0.2.2.2-alpha': (94 commits)
  downgrade a log severity, since this event has been known
  Update to the "September 4 2009" ip-to-country file.
  bump to 0.2.2.2-alpha
  Revert "Teach connection_ap_can_use_exit about Exclude*Nodes"
  fix grammar / add changelog for the torify commit
  Fix compile on Snow Leopard
  Fix build warnings on OSX 10.5.8
  Change the condition on the nonlive timeout counting.
  Add a couple of time helper functions.
  Fix typos and comments, plus two bugs
  Implement and document new network liveness algorithm.
  Fix some precision-related asserts in unit tests.
  replace contrib/auto-naming with a readme saying where it went
  clarify our rules for assigning the Named flag
  disable the end of circuitbuildtimeout units tests
  draw in a lot of 0.2.1.20 changelog items into 0.2.2.2-alpha
  Fix compile on freebsd
  Let our config abbreviations rewrite more than once
  a mish-mash of stuff in my sandbox
  give proposal 151 a changelog and other touchups
  ...
2009-09-21 13:14:39 +02:00
Roger Dingledine
54ba86d9d0 downgrade a log severity, since this event has been known
to happen and there's nothing the user can do about it
2009-09-21 03:32:28 -04:00
Roger Dingledine
3ddd7212e6 Update to the "September 4 2009" ip-to-country file. 2009-09-21 01:44:59 -04:00
Roger Dingledine
5488cda19a bump to 0.2.2.2-alpha 2009-09-21 01:31:39 -04:00
Roger Dingledine
fa63d47f83 Merge branch 'maint-0.2.1' 2009-09-20 23:53:03 -04:00
Roger Dingledine
95008db08d Revert "Teach connection_ap_can_use_exit about Exclude*Nodes"
This reverts commit dc3229313b.

We're going to do this more thoroughly in 0.2.2.x, and not in
maint-0.2.1.
2009-09-20 23:50:48 -04:00
Roger Dingledine
ed62b031d3 fix grammar / add changelog for the torify commit 2009-09-20 23:24:46 -04:00
Sebastian Hahn
772ce9d085 Fix compile on Snow Leopard 2009-09-20 23:17:00 -04:00
Roger Dingledine
61e814af7a Merge commit 'sebastian/weasel_torify' 2009-09-20 23:11:46 -04:00
Nick Mathewson
93b33e15ab Fix build warnings on OSX 10.5.8 2009-09-20 23:01:43 -04:00
Mike Perry
134266b984 Change the condition on the nonlive timeout counting.
Try to clarify things in the comment too.
2009-09-20 18:20:10 -07:00
Mike Perry
e2cc4e353a Add a couple of time helper functions.
Also add rounding support to tv_mdiff().
2009-09-20 18:03:39 -07:00
Roger Dingledine
cf2afcd707 Fix typos and comments, plus two bugs
A) We were considering a circuit had timed out in the special cases
where we close rendezvous circuits because the final rendezvous
circuit couldn't be built in time.
B) We were looking at the wrong timestamp_created when considering
a timeout.
2009-09-20 19:50:44 -04:00
Mike Perry
f39bedf250 Implement and document new network liveness algorithm.
Based on irc discussion with arma.
2009-09-20 14:51:30 -07:00
Mike Perry
6700e528be Fix some precision-related asserts in unit tests.
Mostly by storing the timeout as milliseconds and not seconds
internally.
2009-09-20 14:43:45 -07:00
Roger Dingledine
2218fd22c5 replace contrib/auto-naming with a readme saying where it went 2009-09-19 06:22:50 -04:00
Roger Dingledine
6750f7e8b1 clarify our rules for assigning the Named flag 2009-09-18 03:05:52 -04:00