Mike Perry
04866055e8
Change from first hop accounting to 2nd hop accounting
...
This has several advantages, including more resilience to ambient failure.
I still need to rename all the first_hop vars tho.. Saving that for a separate
commit.
2012-12-09 20:02:41 -08:00
Mike Perry
fbbf894d4d
Add intro+rend cannibalize param..
2012-12-09 20:02:08 -08:00
Mike Perry
930fbb2fec
Flag cannibalized circs as used (non-ideal).
...
Also add some comments.
2012-12-09 19:18:04 -08:00
Mike Perry
686fc22259
Allow any valid 'end' cell to mean a circuit was used successfully.
...
Also improve some log messages.
2012-12-08 16:37:22 -08:00
Mike Perry
b599a6ed07
Sadly, we can't safely count client intro circ success
2012-12-08 14:16:29 -08:00
Mike Perry
5f733ccd73
Fix some hidden service edge cases.
2012-12-08 12:07:58 -08:00
Mike Perry
26fa47226c
Refactor path use bias code into own function.
...
Also, improve and log some failure cases.
2012-12-07 17:47:23 -08:00
Mike Perry
c3b71a3fc9
Actually, both nacks and acks indicate a valid path
2012-12-07 15:50:31 -08:00
Mike Perry
dc86d7c35b
Note more potential issues.
2012-12-07 15:28:38 -08:00
Mike Perry
ecaeb505fa
Note a strange case for SOCKS streams.
2012-12-07 15:28:38 -08:00
Mike Perry
7a28862d56
Fix another crash bug.
2012-12-07 15:28:38 -08:00
Mike Perry
721f7e3751
Fix a crash bug and pass down a remote reason code.
...
Unexpected channel closures count as remote circ failures.
2012-12-07 15:28:38 -08:00
Mike Perry
9b40466072
Document that care needs to be taken with any_streams_attached.
2012-12-07 15:28:38 -08:00
Mike Perry
c3028edba6
Remove n_chan codepaths for determinining guard.
...
Cpath is apparently good enough.
2012-12-07 15:28:38 -08:00
Mike Perry
a630726884
Move a pathbias function that depends on entryguard_t.
2012-12-07 15:28:38 -08:00
Mike Perry
7f8cbe389d
Fix a crash due to NULL circ->n_chan.
...
Is this redundant? Can we always rely on circ->cpath->extend_info
being present for origin circuits?
2012-12-07 15:28:38 -08:00
Mike Perry
428fbfc1d5
Prop209: Rend circuits weren't ever marked dirty.
2012-12-07 15:28:38 -08:00
Mike Perry
aa0e6e2c03
Prop 209: Add in hidserv path bias counts for usage.
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
da5c398d79
Be explicit about units for timeout.
2012-12-07 15:28:37 -08:00
Mike Perry
ef1b830ef8
Fix an assert crash and an incorrectly placed return.
2012-12-07 15:28:37 -08:00
Mike Perry
f215d19105
Add a changes file for bug7157.
2012-12-07 15:28:37 -08:00
Mike Perry
df4aeaa0d6
Update manpage for new PathBias torrc options.
2012-12-07 15:28:37 -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
a54873648f
Refactor pathbias functions to use pathbias_should_count.
2012-12-07 15:28:37 -08:00
Mike Perry
ab9c83c949
Update Path Bias log messages to match Proposal 209.
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
Mike Perry
248fbc3619
Update pathbias parameters to match Proposal 209.
...
Needs manpage update and testing still..
2012-12-07 15:28:37 -08:00
Mike Perry
954f263ed5
Add the ability to count circuit timeouts for guards.
...
This is purely for informational reasons for debugging.
2012-12-07 15:28:36 -08:00
Nick Mathewson
c8056dcbbb
Fix some wide lines
2012-12-07 14:14:20 -05:00
Nick Mathewson
3fa9151f26
Merge branch 'win64-7260'
...
Conflicts:
src/or/dns.c
2012-12-07 14:12:17 -05:00
Nick Mathewson
cd4f56a37c
Fix infinite loop in circuit_expire_bulding
...
Fixes bug 7663; bug introduced in 42e3c04a7a
. Not in any
released version of Tor.
2012-12-07 14:08:07 -05:00
Nick Mathewson
504d4aa8c6
Expand the manpage to say: watch out for nonlocal socks
...
This clears up the remaining issue stopping me from closing bug 6297.
2012-12-07 12:42:55 -05:00
Nick Mathewson
f366b0112e
Merge remote-tracking branch 'karsten/task-6266'
2012-12-07 11:39:56 -05:00
Nick Mathewson
81fcebcd05
Merge branch 'bug7306'
2012-12-07 11:11:26 -05:00
Nick Mathewson
025dc19b63
Merge remote-tracking branch 'public/bug6887'
2012-12-07 11:02:27 -05:00
Nick Mathewson
f4f7e7a6f8
Merge branch 'bug3443_squashed'
2012-12-07 10:35:41 -05:00
Mike Perry
42e3c04a7a
Bug 3443: Don't count ORconn setup in circuit build time.
...
Also, add a hack Roger suggested where we're more patient if no circuits are
opened yet.
2012-12-07 10:34:09 -05:00
Nick Mathewson
f742b33d85
Drop FallbackNetworkstatusFile; it never worked.
2012-12-06 11:28:49 -05:00
Nick Mathewson
a8d491a8fd
Add an option to weight down authorities when choosing a fallback
2012-12-06 11:28:49 -05:00
Nick Mathewson
06cd62266f
Add a way to configure selection weights for dir_server_t
2012-12-06 11:28:49 -05:00
Nick Mathewson
4e3d07a68a
When choosing among dirserver_ts, consider their weights
2012-12-06 11:28:49 -05:00
Nick Mathewson
90f6071d8d
New FallbackDir option to add extra directories for bootstraping
...
This replaces the old FallbackConsensus notion, and should provide a
way -- assuming we pick reasonable nodes! -- to give clients
suggestions of placs to go to get their first consensus.
2012-12-06 11:28:49 -05:00
Nick Mathewson
46a62e3256
Refactor add_trusted_dir_server
...
Now creating a dir_server_t and adding it are separate functions, and
there are frontend functions for adding a trusted dirserver and a
fallback dirserver.
2012-12-06 11:28:48 -05:00
Nick Mathewson
705ee3b5d4
Rename trusted_dir_server_t to dir_server_t. Automatic renaming.
2012-12-06 11:27:20 -05:00
Nick Mathewson
ded70363a7
Rename DirServer to DirAuthority
2012-12-06 11:23:43 -05:00
Nick Mathewson
5c51b3f1f0
Start refactoring trusted_dir_servers into trusted and fallback lists
...
We use trusted_dir_server_t for two pieces of functionality: a list of
all directory authorities, and a list of initial places to look for
a directory. With this patch we start to separate those two roles.
There is as of now no actual way to be a fallback directory without being
an authority.
2012-12-06 11:23:43 -05:00
Nick Mathewson
404e3dd481
Correct moribund logic about caching v2 networkstatuses
2012-12-06 11:15:01 -05:00
Nick Mathewson
194cc24792
Make output of router_get_trusted_dir_servers const
2012-12-06 11:15:01 -05:00