Sebastian Hahn [Thu, 30 Sep 2010 04:10:56 +0000 (06:10 +0200)]
Use an upper and lower bound for bridge weights
When picking bridges (or other nodes without a consensus entry (and
thus no bandwidth weights)) we shouldn't just trust the node's
descriptor. So far we believed anything between 0 and 10MB/s, where 0
would mean that a node doesn't get any use from use unless it is our
only one, and 10MB/s would be a quite siginficant weight. To make this
situation better, we now believe weights in the range from 20kB/s to
100kB/s. This should allow new bridges to get use more quickly, and
means that it will be harder for bridges to see almost all our traffic.
Roger Dingledine [Wed, 29 Sep 2010 22:05:10 +0000 (18:05 -0400)]
no measurement circs if not enough build times
In the first 100 circuits, our timeout_ms and close_ms
are the same. So we shouldn't transition circuits to purpose
CIRCUIT_PURPOSE_C_MEASURE_TIMEOUT, since they will just timeout again
next time we check.
Mike Perry [Wed, 29 Sep 2010 15:55:11 +0000 (08:55 -0700)]
Do away with the complexity of the network liveness detection.
We really should ignore any timeouts that have *no* network activity for their
entire measured lifetime, now that we have the 95th percentile measurement
changes. Usually this is up to a minute, even on fast connections.
Mike Perry [Wed, 29 Sep 2010 15:47:35 +0000 (08:47 -0700)]
Fix state checks on liveness handling.
If we really want all this complexity for these stages here, we need to handle
it better for people with large timeouts. It should probably go away, though.
Roger Dingledine [Wed, 29 Sep 2010 02:32:38 +0000 (22:32 -0400)]
handle ugly edge case in retrying entrynodes
Specifically, a circ attempt that we'd launched while the network was
down could timeout after we've marked our entrynodes up, marking them
back down again. The fix is to annotate as bad the OR conns that were
around before we did the retry, so if a circuit that's attached to them
times out we don't do anything about it.
Nick Mathewson [Tue, 28 Sep 2010 17:35:06 +0000 (13:35 -0400)]
Remove the completely outdated Win32Build directory
If you want to try to build Tor with a recent MSVC, you are better
off starting from scratch than trying to use the project files that
we used to build 2006 versions of Tor using 2006 versions of MSVC.
Nick Mathewson [Tue, 21 Sep 2010 18:59:43 +0000 (14:59 -0400)]
Even more accurate handling for shifting accounting intervals
Roger correctly pointed out that my code was broken for accounting
periods that shifted forwards, since
start_of_accounting_period_containing(interval_start_time) would not
be equal to interval_start_time, but potentially much earlier.
Nick Mathewson [Tue, 21 Sep 2010 17:07:11 +0000 (13:07 -0400)]
New function to load windows system libraries
This function uses GetSystemDirectory() to make sure we load the version
of the library from c:\windows\system32 (or local equivalent) rather than
whatever version lives in the cwd.
Nick Mathewson [Tue, 21 Sep 2010 05:03:29 +0000 (01:03 -0400)]
First cut of code to enable RefuseUnknownExits
The RefuseUnknownExits config option is now a tristate, with "1"
meaning "enable it no matter what the consensus says", "0" meaning
"disable it no matter what the consensus says", and "auto" meaning "do
what the consensus says". If the consensus is silent, we enable
RefuseUnknownExits.
This patch also changes the dirserv logic so that refuseunknownexits
won't make us cache unless we're an exit.
Nick Mathewson [Mon, 20 Sep 2010 17:33:57 +0000 (13:33 -0400)]
Count unknown authorities as unknown only once, not once per signature.
Do not double-report signatures from unrecognized authorities both as
"from unknown authority" and "not present". Fixes bug 1956, bugfix on
0.2.2.16-alpha.
Sebastian Hahn [Sun, 19 Sep 2010 11:09:47 +0000 (13:09 +0200)]
Attempt to fix compilation on Windows
Our attempt to make compilation work on old versions of Windows
again while keeping wince compatibility broke the build for Win2k+.
helix reports this patch fixes the issue for WinXP. Bugfix on
0.2.2.15-alpha; related to bug 1797.
Nick Mathewson [Thu, 16 Sep 2010 14:54:09 +0000 (10:54 -0400)]
Change 'bugfix on' line for changes/bug1921.
Karsten says: "the ChangeLog should say it's a bugfix on
0.2.2.15-alpha, because enabling stats while Tor is running (which
leads to this false log message) is only possible since then."