Nick Mathewson
4eff8b6530
When we mark a node as a sybil, mark it down and reset its uptime to 0
...
This prevents bug 8147, where such nodes would accrue points towards
Guard, Fast, HSDir, and so on.
Fixes bug 8147.
2013-02-04 11:11:54 -05:00
Nick Mathewson
61995d3e2c
Ignore tiny bandwidths entirely when computing thresholds
...
Another bug 8145 fix.
2013-02-04 10:47:08 -05:00
Nick Mathewson
317d16de04
Increase the minimum value for the Fast flag to 4096.
...
Fix for 8145.
2013-02-04 10:41:25 -05:00
Nick Mathewson
8be7f69f8d
Refactor should-count-towards-thresholds test into new function
2013-02-04 10:22:45 -05:00
Nick Mathewson
40c13240c0
When computing performance thresholds, ignore omitted-as-sybil nodes.
...
Fixes bug 8146.
2013-02-04 10:19:26 -05:00
Nick Mathewson
ddf2c36ab1
Whoops: evdns_log, not tor_log, in src/ext/eventdns.c
2013-02-04 10:07:02 -05:00
Nick Mathewson
acb43c0735
Merge remote-tracking branch 'public/feature7706'
2013-02-01 17:24:08 -05:00
Nick Mathewson
c93f66b103
Merge remote-tracking branch 'public/bug7708_023_v3_squashed'
2013-02-01 17:11:46 -05:00
Nick Mathewson
690ea9e8cf
Clarify documentation of connection_finished_flushing
2013-02-01 17:10:15 -05:00
Nick Mathewson
b442930789
Fix serious breakage in connection_handle_write_impl
...
When we first implemented TLS, we assumed in conneciton_handle_write
that a TOR_TLS_WANT_WRITE from flush_buf_tls meant that nothing had
been written. But when we moved our buffers to a ring buffer
implementation back in 0.1.0.5-rc (!), we broke that invariant: it's
possible that some bytes have been written but nothing.
That's bad. It means that if we do a sequence of TLS writes that ends
with a WANTWRITE, we don't notice that we flushed any bytes, and we
don't (I think) decrement buckets.
Fixes bug 7708; bugfix on 0.1.0.5-rc
2013-02-01 17:10:15 -05:00
Nick Mathewson
996db755c2
Fix a couple of warnings on the 8081 branch.
2013-02-01 17:03:00 -05:00
Mike Perry
fed7f01377
Add EntryGuardPathUseBias to state file keyword list.
2013-02-01 17:01:26 -05:00
Mike Perry
b3e57b760e
Increment an informational counter for use failed state.
...
This informational counter is probably now redundant, but might as well keep
it consistent I guess.
2013-02-01 17:01:26 -05:00
Mike Perry
da5817772d
Rename and relocate the bw weight scale param getter.
...
It had nothing to do with circuit build times.
2013-02-01 17:01:22 -05:00
Mike Perry
6e4610de02
Fix a log typo found by sysrqb.
2013-02-01 17:01:22 -05:00
Mike Perry
95d272f5d8
Bounds-check path bias rate parameters.
...
The other remaining parameters don't really need range checks.
2013-02-01 17:01:22 -05:00
Mike Perry
bce6714f99
Refactor code that rolls back the use state
...
Also document it better.
Mention this refactoring in the comments for the path state machine.
2013-02-01 17:01:16 -05:00
Mike Perry
3a63e5ef42
Refactor and rename pathbias rate evaluation.
2013-02-01 17:01:12 -05:00
Mike Perry
dfcfb5d17d
Refactor the scaling parameter fetching into a single function.
...
Also, deprecate the torrc options for the scaling values. It's unlikely anyone
but developers will ever tweak them, even if we provided a single ratio value.
2013-02-01 17:01:12 -05:00
Mike Perry
2b2c7f23f5
Mark entry guard state dirty everwhere the pathbias code touches it.
2013-02-01 17:01:12 -05:00
Mike Perry
6828a19670
Add a tristate to guard against unexpected circ purpose transitions
2013-02-01 17:01:12 -05:00
Mike Perry
173ed05d2f
Clarify state transition and related pathbias comments
2013-02-01 17:01:12 -05:00
Nick Mathewson
ec90ed4f6d
Merge branch 'rename_log_7599'
2013-02-01 16:23:26 -05:00
Roger Dingledine
fd49226385
Help us track bug 8093:
...
Improve the log message when "Bug/attack: unexpected sendme cell
from client" occurs.
2013-02-01 16:22:34 -05:00
Nick Mathewson
7301339e33
fix wide lines from tor_log rename
2013-02-01 16:19:02 -05:00
Nick Mathewson
1dd03fbc77
Fix a silly mistake in the tor_mathlog() documentation. Give it a unit test.
2013-02-01 16:09:16 -05:00
Nick Mathewson
b034d07acd
Remove old wrapper code and defines for keeping log() and log(3) apart
...
This is the non-automated portion of bug 7599.
2013-02-01 15:49:51 -05:00
Nick Mathewson
a141430ec3
Rename log() to tor_log() for logging
...
This is meant to avoid conflict with the built-in log() function in
math.h. It resolves ticket 7599. First reported by dhill.
This was generated with the following perl script:
#!/usr/bin/perl -w -i -p
s/\blog\(LOG_(ERR|WARN|NOTICE|INFO|DEBUG)\s*,\s*/log_\L$1\(/g;
s/\blog\(/tor_log\(/g;
2013-02-01 15:43:37 -05:00
Nick Mathewson
abb5519d93
typo in crypto_curve25519.c comment, spotted by rransom
2013-01-31 13:53:29 -05:00
Nick Mathewson
294ce2ea87
whitespace fix
2013-01-31 13:26:25 -05:00
Nick Mathewson
b35b4d5a9a
Merge branch 'double-0-check'
2013-01-31 13:19:27 -05:00
Nick Mathewson
b0dd355891
Use %d, not %02d, for decimal percentages
...
Cosmetic tweak on 5956; not in any released tor.
2013-01-30 17:35:28 -05:00
Nick Mathewson
35daf6f602
Rename all of the macros in tor_queue.h to start with TOR_
2013-01-30 12:58:49 -05:00
Nick Mathewson
29136bd7e4
Merge branch 'bug5956_squashed'
2013-01-30 11:59:51 -05:00
Nick Mathewson
02c320916e
Parameterize FRAC_USABLE_NEEDED for fraction of circuits
...
Instead of hardcoding the minimum fraction of possible paths to 0.6, we
take it from the user, and failing that from the consensus, and
failing that we fall back to 0.6.
2013-01-30 11:58:17 -05:00
Nick Mathewson
813a0f8c40
Compute whether we're ready to build circuits based on fraction of paths
...
Previously we did this based on the fraction of descriptors we
had. But really, we should be going based on what fraction of paths
we're able to build based on weighted bandwidth, since otherwise a
directory guard or two could make us behave quite oddly.
Implementation for feature 5956
2013-01-30 11:58:17 -05:00
Nick Mathewson
bc52e0488b
Add an optional out-arg to count_usable_descriptors
...
This way we get the usable nodes themselves, so we can feed them into
frac_nodes_with_descriptors
2013-01-30 11:58:17 -05:00
Nick Mathewson
fcf906ec73
Add a function to compute fraction of nodes (by weighted bw) with descriptors
2013-01-30 11:58:17 -05:00
Nick Mathewson
73d605b0f7
Detect platforms where memset(0) doesn't set doubles to 0.0.
...
This is allowed by the C statndard, which permits you to represent
doubles any way you like, but in practice we have some code that
assumes that memset() clears doubles in structs. Noticed as part of
7802 review; see 8081 for more info.
2013-01-29 17:38:15 -05:00
Nick Mathewson
a0351311ae
Fix unit test to not expect v2 directory request geoip info
...
When we implemented #5823 and removed v2 directory request info, we
never actually changed the unit tests not to expect it.
Fixes bug 8084; bug not in any released version of Tor.
2013-01-29 12:01:41 -05:00
Andrea Shepard
123daffb60
Merge branch 'bug7802' of ssh://git-rw.torproject.org/mikeperry/tor
2013-01-28 16:16:45 -08:00
Andrea Shepard
dfbd19df41
Merge branch 'time_based_onionqueue_v2' of ssh://git-rw.torproject.org/nickm/tor
2013-01-24 08:10:12 -08:00
Mike Perry
a78542f0c3
Bug 8024: Check for null/closed channel before probing.
2013-01-22 21:03:28 -08:00
Nick Mathewson
b415aba5fa
Merge remote-tracking branch 'public/bug8012'
2013-01-22 14:54:30 +00:00
Nick Mathewson
dd77b652f2
More of b30d06255c for #6826 : fix compat_libevent compilation
...
It looks like there was a compilation error for 6826 on some
platforms. Removing even more now-uncallable code to handle detecting
libevent versions before 1.3e.
Fixes bug 8012; bug not in any released Tor.
2013-01-21 18:24:10 +00:00
Mike Perry
b810d322bf
squash! Remove a source of error during path bias scaling
...
Improve debug logs and fix a state fencepost error.
2013-01-20 14:32:56 -08:00
Mike Perry
06a1d0b044
squash! Implement Path use bias accounting.
...
Make a debug log more informative.
2013-01-20 14:32:56 -08:00
Mike Perry
f858370233
Prevent early close of path bias testing circuits.
...
We need to let them live long enough to perform the test.
2013-01-20 14:32:56 -08:00
Mike Perry
fb711e6d77
squash! Remove a source of error during path bias scaling
...
Move a log message about scaling to after we scale
2013-01-20 14:32:27 -08:00
Nick Mathewson
c71b7db8f3
Merge remote-tracking branch 'karsten/bug5823'
2013-01-19 09:36:55 -05:00