Nick Mathewson
9c8dbcd0d6
More module documentation (circpathbias, circuitlist)
2016-10-26 12:38:50 -04:00
Nick Mathewson
12cf73c451
Merge remote-tracking branch 'andrea/ticket19858_v2'
...
Conflict in entrynodes.c: any_bridge_supports_microdescriptors was
removed in master, and modified in 19858_v2
2016-10-19 17:11:47 -04:00
Roger Dingledine
bfaded9143
Bridge-using clients now use their cached microdesc consensus
...
Clients that use bridges were ignoring their cached microdesc-flavor
consensus files, because they only thought they should use the microdesc
flavor once they had a known-working bridge that could offer microdescs,
and at first boot no bridges are known-working.
This bug caused bridge-using clients to download a new microdesc consensus
on each startup.
Fixes bug 20269; bugfix on 0.2.3.12-alpha.
2016-10-01 16:34:17 -04:00
Andrea Shepard
006c26f54f
Abolish globals in entrynodes.c; relativize guard context to new guard_selection_t structure
2016-09-25 02:11:44 +00:00
Andrea Shepard
657eaee6ae
Expose GETINFO download status statics for test suite and make things mockable
2016-06-29 05:55:42 +00:00
Andrea Shepard
c692900728
Add bridge descriptor download status queries to GETINFO
2016-06-29 05:55:42 +00:00
teor (Tim Wilson-Brown)
f2153f9716
Always allow OR connections to bridges on private addresses
...
Regardless of the setting of ExtendAllowPrivateAddresses.
This fixes a bug with pluggable transports that ignore the
(potentially private) address in their bridge line.
Fixes bug 18517; bugfix on 23b088907f
in tor-0.2.8.1-alpha.
2016-03-24 10:13:58 -04:00
Nick Mathewson
57699de005
Update the copyright year.
2016-02-27 18:48:19 +01:00
Roger Dingledine
0e4bdc4005
clean up comments and whitespace a bit
2015-02-18 19:27:02 -05:00
George Kadianakis
14a3c17ce6
Calculate the guardfraction bandwidth of a guard.
2015-02-18 09:09:33 -05:00
George Kadianakis
f4a63f8eab
Parse GuardFraction info from consensuses and votes.
...
Also introduce the UseGuardFraction torrc option which decides whether
clients should use guardfraction information found in the consensus.
2015-02-18 09:09:33 -05:00
Nick Mathewson
f54e54b0b4
Bump copyright dates to 2015, in case someday this matters.
2015-01-02 14:27:39 -05:00
Nick Mathewson
9619c395ac
Merge remote-tracking branch 'andrea/ticket6456'
...
Somewhat tricky conflicts:
src/or/config.c
Also, s/test_assert/tt_assert in test_config.c
2014-11-04 09:52:04 -05:00
Nick Mathewson
fcdcb377a4
Add another year to our copyright dates.
...
Because in 95 years, we or our successors will surely care about
enforcing the BSD license terms on this code. Right?
2014-10-28 15:30:16 -04:00
rl1987
8b539cc276
Unit testing entry_is_time_to_retry().
2014-08-20 15:29:56 -04:00
Andrea Shepard
b8b46e8ef8
Add some mocks needed to unit test ClientTransportPlugin/ServerTransportPlugin config line parsing
2014-07-25 21:41:03 -07:00
Nick Mathewson
5690284559
Fix wide lines, make entry_is_live() non-inline
2014-07-16 16:52:16 +02:00
George Kadianakis
8bbb217964
Change the interface of entry_is_live() to take a bitmap.
2014-06-25 15:44:36 -04:00
George Kadianakis
46d41e6e9b
Basic entry_is_live() unittest.
2014-06-25 15:39:00 -04:00
George Kadianakis
bf263a9b99
Make a few entrynodes.c functions testable.
2014-06-15 19:02:59 -07:00
Nick Mathewson
d5e11f21cc
Fix warnings from doxygen
...
Most of these are simple. The only nontrivial part is that our
pattern for using ENUM_BF was confusing doxygen by making declarations
that didn't look like declarations.
2014-03-25 11:27:43 -04:00
George Kadianakis
1c475eb018
Throw control port warning if we failed to connect to all our bridges.
2014-03-10 22:52:07 +00:00
Nick Mathewson
4b6f074df9
Merge remote-tracking branch 'public/bug5018'
...
Conflicts:
src/or/entrynodes.c
2013-10-29 01:29:59 -04:00
George Kadianakis
6f33dffec1
Only launch transport proxies that provide useful transports.
2013-10-29 01:05:56 -04:00
Nick Mathewson
71bd100976
DROPGUARDS controller command
...
Implements ticket 9934; patch from "ra"
2013-10-21 13:02:25 -04:00
Nick Mathewson
c101ecc8dc
Merge remote-tracking branch 'asn/bug3594_rebased_and_fixed'
...
Conflicts:
src/common/util.c
src/or/entrynodes.h
2013-03-19 13:25:45 -04:00
Nick Mathewson
0fa362cafa
Merge remote-tracking branch 'public/feature4994-rebased'
2013-02-15 15:58:54 -05:00
Nick Mathewson
d7089ff228
Restore the entry/dirguard distinction.
...
We shouldn't be calling choose_random_entry() for directory
conncetions; that's what choose_random_dirguard() is for.
2013-02-12 16:23:12 -05:00
George Kadianakis
266f8cddd8
Refactoring to make parse_bridge_line() unittestable.
...
- Make parse_bridge_line() return a struct.
- Make bridge_add_from_config() accept a struct.
- Make string_is_key_value() less hysterical.
2013-02-11 18:07:26 +00:00
George Kadianakis
8f2e980159
Send SOCKS arguments when doing SOCKS5.
2013-02-09 16:30:16 +00:00
George Kadianakis
14b84858c0
Send SOCKS arguments when doing SOCKS4.
2013-02-09 16:30:16 +00:00
George Kadianakis
757b03aacb
Add support for parsing SOCKS arguments.
2013-02-09 16:30:16 +00:00
Mike Perry
b03553737c
Separate the flags for logging use bias.
...
I think we want both sets of messages to appear independently to help us know
what needs tuning.
2013-02-07 14:30:58 -05:00
Roger Dingledine
bce5019eff
generalize choose_random_entry()'s dirinfo parameter
...
Now we can specify to skip bridges that wouldn't be able to answer the
type of dir fetch we're launching.
It's still the responsibility of the rest of the code to prevent us from
launching a given dir fetch if we have no bridges that could handle it.
2013-02-02 08:19:27 -08:00
Roger Dingledine
a8297cdbd3
use microdescriptors if *any* of our bridges can handle them
...
Now as we move into a future where most bridges can handle microdescs
we will generally find ourselves using them, rather than holding back
just because one of our bridges doesn't use them.
2013-02-02 08:04:20 -08:00
Mike Perry
e13e30221e
Implement Path use bias accounting.
...
Path use bias measures how often we can actually succeed using the circuits we
actually try to use. It is a subset of path bias accounting, but it is
computed as a separate statistic because the rate of client circuit use may
vary depending on use case.
2013-01-18 19:46:21 -08:00
Nick Mathewson
4da083db3b
Update the copyright date to 201.
2013-01-16 01:54:56 -05:00
Nick Mathewson
885e8d35c7
Merge remote-tracking branch 'mikeperry/209-path-bias-changes'
2012-12-25 23:30:28 -05:00
Nick Mathewson
0c4210fb65
Directory guard implementation.
...
Implements proposal 207; ticket 6526.
2012-12-25 23:14:43 -05:00
Nick Mathewson
1df7289000
Remember which of our guards are directory caches
2012-12-25 23:10:41 -05:00
Mike Perry
4590993ff3
Space fixes.
2012-12-09 23:47:04 -08:00
Mike Perry
b75880d7b3
Fix a rather serious use-count state bug.
...
We need to use the success count or the use count depending on the consensus
parameter.
2012-12-09 20:56:48 -08:00
Mike Perry
2dbb62f1b5
Convert to doubles for all pathbias state.
...
Let's hope this solves the rounding error issue..
2012-12-09 20:53:22 -08:00
Mike Perry
ab1fce5c19
Also shorten circuit_successes to circ_successes.
...
For consistency and great justice.
Ok, mostly consistency.
2012-12-09 20:24:50 -08:00
Mike Perry
a90f165b83
Rename first_hop to circ_attempt.
...
Since we've generalized what we can count from (first or second hop), we
should generalize the variable and constant naming too.
2012-12-09 20:24:22 -08:00
Mike Perry
a630726884
Move a pathbias function that depends on entryguard_t.
2012-12-07 15:28:38 -08:00
Mike Perry
412ae099cb
Prop 209: Add path bias counts for timeouts and other mechanisms.
...
Turns out there's more than one way to block a tagged circuit.
This seems to successfully handle all of the normal exit circuits. Hidden
services need additional tweaks, still.
2012-12-07 15:28:38 -08:00
Mike Perry
bb548134cd
Update with code review changes from Nick.
2012-12-07 15:28:37 -08:00
Mike Perry
192996690c
Fix spaces.
2012-12-07 15:28:37 -08:00
Mike Perry
9bf5582e73
Add log message checks for different rates.
...
May want to squash this forward or back..
2012-12-07 15:28:37 -08:00