Nick Mathewson
7410adb330
Merge branch 'maint-0.2.8'
2016-10-06 09:59:49 -04:00
Nick Mathewson
ab98c4387e
Merge branch 'maint-0.2.7' into maint-0.2.8
2016-10-06 09:59:42 -04:00
Nick Mathewson
ec718aa839
Merge branch 'maint-0.2.6' into maint-0.2.7
2016-10-06 09:59:18 -04:00
Nick Mathewson
12a7298376
Merge branch 'maint-0.2.5' into maint-0.2.6
2016-10-06 09:59:03 -04:00
Nick Mathewson
304d8f3bbb
Merge branch 'maint-0.2.4' into maint-0.2.5
2016-10-06 09:58:54 -04:00
Nick Mathewson
6055bba8cc
Only use -levent when checking functions if we will use it to link.
...
Fixes 19904; bugfix on b62abf9f21499ab; patch from Rubiate.
2016-10-06 09:16:21 -04:00
Muhammad Falak R Wani
fdc0a660b4
dircollate: Use correct tor_calloc args.
...
Flip the tor_calloc arguments in the call.
Signed-off-by: Muhammad Falak R Wani <falakreyaz@gmail.com>
2016-10-05 13:06:27 -04:00
Nick Mathewson
785176e975
Clean up and fix exit policy check in connection_exit_connect().
...
Previously, we would reject even rendezvous connections to IPv6
addresses when IPv6Exit was false. But that doesn't make sense; we
don't count that as "exit"ing. I've corrected the logic and tried
to make it a lottle more clear.
Fixes bug 18357; this code has been wrong since 9016d9e829
in
0.2.4.7-alpha.
2016-10-05 12:44:53 -04:00
Karsten Loesing
1b4984f196
Update geoip and geoip6 to the October 6 2016 database.
2016-10-05 16:35:14 +02:00
Nick Mathewson
05aed5b635
Allow a unix: address to contain a C-style quoted string.
...
Feature 18753 -- all this to allow spaces.
2016-10-04 15:43:20 -04:00
Nick Mathewson
684500519d
Add TAGS to gitignore.
2016-10-03 14:08:50 -04:00
Nick Mathewson
4bbdebff3f
Merge remote-tracking branch 'arma/bug20277'
2016-10-03 14:05:26 -04:00
Nick Mathewson
a49fb1e2e5
Teach 'make tags' about MOCK_IMPL.
...
Patch from nherring; closes ticket 16869
2016-10-03 13:58:09 -04:00
cypherpunks
3b2f012e28
Avoid reordering IPv6 interface addresses
...
When deleting unsuitable addresses in get_interface_address6_list(), to
avoid reordering IPv6 interface addresses and keep the order returned by
the OS, use SMARTLIST_DEL_CURRENT_KEEPORDER() instead of
SMARTLIST_DEL_CURRENT().
This issue was reported by René Mayrhofer.
[Closes ticket 20163; changes file written by teor. This paragraph
added by nickm]
2016-10-03 13:50:27 -04:00
Paolo Inglese
ae4077916c
Fix parse_virtual_addr_network minimum network size
2016-10-03 12:18:51 +01:00
Roger Dingledine
14a6047210
remove whitespace accidentally added in 4f1a04ff
2016-10-02 19:34:23 -04:00
Roger Dingledine
9228db5f1b
remove confusing comment about conditional consensus download
...
We removed that feature in 0.2.4.2-alpha, but some comments seem to
have lingered.
I didn't add a changes/ file since this is just internal code cleanup.
2016-10-02 19:13:35 -04:00
Yawning Angel
847e001d28
Bug 20261: Disable IsolateClientAddr on AF_LOCAL SocksPorts.
...
The client addr is essentially meaningless in this context (yes, it is
possible to explicitly `bind()` AF_LOCAL client side sockets to a path,
but no one does it, and there are better ways to grant that sort of
feature if people want it like using `SO_PASSCRED`).
2016-09-30 18:43:31 +00:00
Nick Mathewson
53255e925c
Fix memory leak from prop264 branch. CID 1373401
2016-09-28 08:21:33 -07:00
Nick Mathewson
153ff4f559
fix a warning in protover.
2016-09-26 11:03:31 -07:00
Nick Mathewson
ed5d2daba1
Merge remote-tracking branch 'public/ticket20001_v2'
2016-09-26 11:01:10 -07:00
Nick Mathewson
97337844b7
Merge branch 'protover_v2_squashed'
2016-09-26 11:00:08 -07:00
Nick Mathewson
501fc3bbc6
protovers: during voting, assert that we are not voting to shut down.
...
As a failsafe, we should make sure that no authority ever votes for
a set of protocol versions that it does not itself support.
2016-09-26 10:56:54 -07:00
Nick Mathewson
1ab641a70e
Remove version_known, and subtly change the meaning of protocols_known
2016-09-26 10:56:53 -07:00
Nick Mathewson
f3382bd722
Rename "proto " to "pr " in consensuses
2016-09-26 10:56:53 -07:00
Nick Mathewson
4cbfee14d4
Update prop264 implementation to split HSMid->HS{Intro,Rend}
2016-09-26 10:56:53 -07:00
Nick Mathewson
0a3da5ce79
prop264: sometimes check client _and_ server versions.
...
As before, we check server protocols whenever server_mode(options)
is true and we check client protocols whenever server_mode(options)
is false.
Additionally, we now _also_ check client protocols whenever any
client port is set.
2016-09-26 10:56:53 -07:00
Nick Mathewson
afe0419db7
Rename get_supported_protocols to protover_get_supported_protocols
2016-09-26 10:56:53 -07:00
Nick Mathewson
3a3120819c
Rename compute_protover_vote to protover_compute_vote
2016-09-26 10:56:53 -07:00
Nick Mathewson
78c07eeee1
Changes file for prop264 / ticket 19958.
2016-09-26 10:56:52 -07:00
Nick Mathewson
4f57d5871e
Update authority votes to match updated proposal.
2016-09-26 10:56:52 -07:00
Nick Mathewson
e402cddefe
Clean whitespace, add missing documentation
2016-09-26 10:56:52 -07:00
Nick Mathewson
1e29c68ba9
Remove DoS vector in protover.c voting code
2016-09-26 10:56:51 -07:00
Nick Mathewson
e525f5697f
Use protocols to see when EXTEND2 support exists.
...
(Technically, we could just remove extend2 cell checking entirely,
since all Tor versions on our network are required to have it, but
let's keep this around as an example of How To Do It.)
2016-09-26 10:56:51 -07:00
Nick Mathewson
90a6fe318c
Vote on 'proto' lines and include them after 'v' lines.
...
(Despite the increased size of the consensus, this should have
approximately zero effect on the compressed consensus size, since
the "proto" line should be completely implied by the "v" line.)
2016-09-26 10:56:51 -07:00
Nick Mathewson
f33b90324a
Include protocol versions in votes.
2016-09-26 10:56:51 -07:00
Nick Mathewson
d97a385535
Workaround a test bug
2016-09-26 10:56:51 -07:00
Nick Mathewson
a3e82563df
Implement voting on the protocol-version options
2016-09-26 10:56:51 -07:00
Nick Mathewson
84f913024d
Include protocol version lines in votes.
2016-09-26 10:56:50 -07:00
Nick Mathewson
07a9b79520
Remove a little duplicated code before it becomes a lot
2016-09-26 10:56:50 -07:00
Nick Mathewson
c6a2204e23
Add code to infer protocol versions for old Tor versions.
2016-09-26 10:56:50 -07:00
Nick Mathewson
a232161f7b
Cover the error cases of parsing protocol versions
...
Also, detect an additional failure type. Thanks, tests!
(How distinctly I recall thee)
2016-09-26 10:56:50 -07:00
Nick Mathewson
0697e413ef
Unit tests for protover_all_supported
2016-09-26 10:56:49 -07:00
Nick Mathewson
c1be8f9d57
Basic backend for the protocol-versions voting algorithm.
...
[This is a brute-force method that potentially uses way too much
RAM. Need to rethink this a little. Right now you can DOS an
authority by saying "Foo=1-4294967295".]
2016-09-26 10:56:49 -07:00
Nick Mathewson
7f718c46f3
Actually check for missing protocols and exit as appropriate.
2016-09-26 10:56:49 -07:00
Nick Mathewson
cca1e0acff
Add necessary code to parse and handle required/recommended protocols
2016-09-26 10:56:49 -07:00
Nick Mathewson
4df12239f6
Emit and parse protocol lists in router descriptors
2016-09-26 10:56:49 -07:00
Nick Mathewson
b2b2e1c7f2
checkpoint basic protover backend
2016-09-26 10:56:48 -07:00
Nick Mathewson
a633baf632
Merge branch 'osx_sierra_028'
2016-09-24 13:33:09 -07:00
Nick Mathewson
39f51dfae3
changes file for osx sierra fixes
2016-09-24 13:29:20 -07:00