Commit Graph

153 Commits

Author SHA1 Message Date
Nick Mathewson 67eb6470d7 Merge branches 'server_ciphers' and 'ciphers.inc' 2017-01-27 16:45:18 -05:00
Nick Mathewson 26a9787aa5 MOre gen_server_ciphers improvements:
- Remove DES from mandatory list.
  - always put the closing ; on its own line.
2017-01-27 16:15:26 -05:00
Suphanat Chunhapanya 1e26d6dbe8 Add the output file to the usage 2017-01-25 13:11:57 -05:00
Suphanat Chunhapanya e6eaf14350 Add usage for check_existing 2017-01-25 13:11:57 -05:00
Suphanat Chunhapanya d97792d596 Logging existing fallbacks at warning level 2017-01-25 13:11:57 -05:00
Suphanat Chunhapanya 3fd58aa98d Automate checking existing fallbacks 2017-01-25 13:11:56 -05:00
Nick Mathewson 8a9eca1267 Teach gen_server_ciphers about CCM and Chacha.
Also, teach it to not use 3DES any more.
2017-01-24 15:29:26 -05:00
Nick Mathewson 3db28eaea2 Update ciphers.inc script to understand openssl-1.1 2017-01-24 15:02:36 -05:00
cypherpunks 99cbadf143 Warn on Tor versions with the 'tor-' prefix
Closes ticket 21096.
2017-01-11 09:16:20 -05:00
cypherpunks fa0792c3a8 Fix coding style issues in the changes file linter
Found using flake8 which gave the following output;

lintChanges.py:10:13: E225 missing whitespace around operator
lintChanges.py:25:1: E302 expected 2 blank lines, found 1
lintChanges.py:46:5: F841 local variable 'lines' is assigned to but never used
lintChanges.py:52:32: E228 missing whitespace around modulo operator
lintChanges.py:53:11: E201 whitespace after '('
lintChanges.py:56:41: E228 missing whitespace around modulo operator

Part of ticket 21096.
2017-01-11 09:16:19 -05:00
teor a0bbd72caa
Add and update fallback directory details
These updates were made after the December 2016 list was created.
2016-12-21 08:15:21 +11:00
teor e9b7308ea5
Blacklist a fallback that was removed by the operator 2016-12-19 18:15:06 +11:00
teor fcf19f8b54
Update fallback whitelist and blacklist
Based on:
* fallback directory mirror checks,
* operator emails and tickets, both before and after the Dec 2016 emails:
https://lists.torproject.org/pipermail/tor-relays/2016-December/011113.html
https://lists.torproject.org/pipermail/tor-relays/2016-December/011330.html
2016-12-19 15:06:46 +11:00
teor 53ec087450
Avoid an error in the fallback script when a fallback doesn't have any uptime
Sometimes, the fallback generation script doesn't add attributes to the
fallbacks in the list. If this happens, log an error, and avoid selecting
that fallback.

This is a rare issue: it should not change selection behaviour.

Fixes issue #20945.
2016-12-19 15:06:04 +11:00
teor 654367f026
Allow fallbacks serving consensuses that expired less than 24 hours ago
This works around #20909, where relays serve stale consensuses for a short
time, and then recover.

Update to the fix for #20539.
2016-12-19 15:06:00 +11:00
teor 2d2bbaf259
Avoid checking fallback candidates' DirPorts if they are down in OnionOO
Exclude relays that have been down for 1 or more days from the fallback
candidate list.

When a relay operator has multiple relays, this prioritises relays that are
up over relays that are down.

Fixes issue #20926.
2016-12-19 15:05:56 +11:00
teor 4c832bcfac
Be more tolerant of a decreased number of fallbacks 2016-12-19 15:05:53 +11:00
teor 124c342364
Reduce fallback bandwidth requirement to 1 MByte/s 2016-12-19 15:05:49 +11:00
teor 35da99a712
Allow 3 fallbacks per operator
This is safe now we are choosing 200 fallbacks.

Closes ticket 20912.
2016-12-19 15:05:45 +11:00
teor ee3e8fc3e9
Require fallbacks to have 90% Running, V2Dir, and Guard flags
This allows 73% of clients to bootstrap in the first 5 seconds without
contacting an authority.

Part of #18828.
2016-12-19 15:05:40 +11:00
teor 396bddaa4c
Require fallback directories to have the same address and port for 7 days
7 days is a tradeoff between the expected time between major Tor releases,
which is 6 months, and the number of relays with enough stability.

Relays whose OnionOO stability timer is reset on restart by bug #18050
should upgrade to Tor 0.2.8.7 or later, which has a fix for this issue.

Closes ticket #20880; maintains short-term fix in e220214 in tor-0.2.8.2-alpha.
2016-12-19 15:05:36 +11:00
teor 9629a25d10
Display the fingerprint when downloading consensuses from fallbacks 2016-12-19 15:05:33 +11:00
teor ced50aff7e
Update fallback whitelist based on relay descriptors
These updates assume that the changes were intentional and permanent.
The operators were emailed to confirm.
2016-12-19 15:05:29 +11:00
teor 8381d928cf
Exclude relays that deliver an expired consensus from the fallback list
Part of #20539, based on #20501.
2016-12-19 15:05:21 +11:00
teor 243d6fa0c7
Exclude relay versions affected by #20499 from the fallback list
Part of #20539, based on #20509.
2016-12-19 15:05:18 +11:00
teor (Tim Wilson-Brown) 49df83cc03
Update fallback whitelist and blacklist
Update fallback whitelist and blacklist based on:
* pre-0.2.9 checks
* operator opt-ins and opt-outs, via emails and tickets
2016-12-19 15:05:10 +11:00
teor 864a8eb283
Make fallback sort order configurable
Closes issue #20882.
2016-12-19 15:05:06 +11:00
teor 31e1439642
Select 200 fallback directories by default for each release
Closes ticket #20881.
2016-12-19 15:05:02 +11:00
teor 4eba30ca59
Provide bandwidth and consensus weight for each candidate fallback
And make it clear that updateFallbackDirs.py outputs bandwidth in
megabytes per second.

Closes #20878.
2016-12-19 15:04:58 +11:00
teor 6ed8e3764b
Add a missed return to fallbackdir_comment() in updateFallbackDirs.py
Closes ticket #20877.
2016-12-19 15:04:54 +11:00
cypherpunks e8760b6e51 Use the new message function
Substitutions were made using `sed -e 's/print/msg/g'`.
2016-12-16 10:52:14 -05:00
cypherpunks 4b2516313e Add a function to keep track of found errors 2016-12-16 10:52:14 -05:00
cypherpunks 44db6461b5 Restrict unsafe constructs and enable all warnings 2016-12-16 10:52:14 -05:00
cypherpunks f43e56a6d0 Declare all variables to be local
Without the 'my' keyword the variables are global and Perl requires
global symbols to include an explicit package name.
2016-12-16 10:52:14 -05:00
cypherpunks 67e1eff321 Convert tabs to spaces 2016-12-16 10:52:14 -05:00
Nick Mathewson bc68eedd79 Update to trunnel 1.5.1 2016-12-08 16:59:25 -05:00
David Goulet 0ba3444b4a Make trunnel find files recursively
Signed-off-by: David Goulet <dgoulet@torproject.org>
2016-10-31 16:03:28 -04:00
Nick Mathewson b64c224362 fix crash in lintChanges.py 2016-09-22 08:33:09 -04:00
Nick Mathewson 5927ed8d33 checkSpace.pl now forbids more identifiers.
The functions it warns about are:
  assert, memcmp, strcat, strcpy, sprintf, malloc, free, realloc,
  strdup, strndup, calloc.

Also, fix a few lingering instances of these in the code. Use other
conventions to indicate _intended_ use of assert and
malloc/realloc/etc.
2016-09-06 12:35:37 -04:00
Nick Mathewson 5aa6a19de5 Update lintChanges script to understand 'Minor features (debugging)'
Previously we would give a warning because we didn't say "Fixes bug
Foo" on these.
2016-08-02 11:40:08 -04:00
Nick Mathewson f3575a45ce Merge branch 'maint-0.2.8' 2016-07-29 10:23:38 -04:00
teor (Tim Wilson-Brown) 1c4a2dd208 Remove a fallback that was on the hardcoded list, then opted-out
The fallback was added in 0.2.8.2-alpha.
2016-07-29 10:23:15 -04:00
Sebastian Hahn 265e40b481 Raise libevent dependency to 2.0.10-stable or newer
Only some very ancient distributions don't ship with Libevent 2 anymore,
even the oldest supported Ubuntu LTS version has it. This allows us to
get rid of a lot of compat code.
2016-07-04 12:40:09 +02:00
Nick Mathewson f42dbc4e26 Merge branch 'maint-0.2.8' 2016-06-28 19:15:43 -04:00
teor (Tim Wilson-Brown) 26146dbe9e Comment-out fallbacks in a way the stem fallback parser understands
If we manually remove fallbacks in C by adding '/*' and '*/' on separate
lines, stem still parses them as being present, because it only looks at
the start of a line.

Add a comment to this effect in the generated source code.
2016-06-28 19:15:08 -04:00
teor (Tim Wilson-Brown) dae442a382
Whitelist a fallback's new IPv6 address
The IPv4-only entry will be used for 0.2.8.
The IPv4 and IPv6 entry will be considered in 0.2.9.
2016-06-23 10:38:52 +10:00
teor (Tim Wilson-Brown) 828e2e1a2e
Remove a fallback that changed DirPort
The operator has confirmed that the DirPort change is perament.
The relay will be reconsidered as a fallback in 0.2.9.
2016-06-23 10:38:03 +10:00
Nick Mathewson 61dac57aa3 Merge branch 'maint-0.2.8' 2016-06-22 08:20:11 -04:00
teor (Tim Wilson-Brown) 69635e41c8
Remove and blacklist 3 fallbacks which disappeared
Blacklist them in case they appear again.
2016-06-22 12:18:10 +10:00
teor (Tim Wilson-Brown) 7e9532b9be
Remove and blacklist 4 fallbacks which are unsuitable
Remove a fallback that changed its fingerprint after it was listed
This happened after to a software update:
https://lists.torproject.org/pipermail/tor-relays/2016-June/009473.html

Remove a fallback that changed IPv4 address

Remove two fallbacks that were slow to deliver consensuses,
we can't guarantee they'll be fast in future.

Blacklist all these fallbacks until operators confirm they're stable.
2016-06-22 12:16:57 +10:00