Commit Graph

38055 Commits

Author SHA1 Message Date
teor 56f715d300 test/dir: Add specific tests for late vote rejection
Part of 4631.
2020-02-18 13:23:23 +10:00
teor 2b7eec7590 test/dir: Update the tests for late vote rejection
Part of 4631.
2020-02-18 12:44:50 +10:00
Roger Dingledine acb5b0d535 Don't accept posted votes after :52:30
If we receive via 'post' a vote from a dir auth after the
fetch_missing_votes cutoff, that means we didn't get it by the time we
begin the "fetching missing votes from everybody else" phase, which means
it is very likely to cause a consensus split if we count it. Instead,
we reject it.

But we still allow votes that we fetch ourselves after that cutoff.

This is a demo branch for making progress on #4631.

I've been running it on moria1 and it catches and handles real buggy
behavior from directory authorities, e.g.

Jan 28 15:59:50.804 [warn] Rejecting vote from 199.58.81.140 received at 2020-01-28 20:59:50; our cutoff for received votes is 2020-01-28 20:52:30
Jan 28 15:59:50.805 [warn] Rejected vote from 199.58.81.140 ("Vote received too late, would be dangerous to count it").
Jan 29 01:52:52.667 [warn] Rejecting vote from 204.13.164.118 received at 2020-01-29 06:52:52; our cutoff for received votes is 2020-01-29 06:52:30
Jan 29 01:52:52.669 [warn] Rejected vote from 204.13.164.118 ("Vote received too late, would be dangerous to count it").
Jan 29 04:53:26.323 [warn] Rejecting vote from 204.13.164.118 received at 2020-01-29 09:53:26; our cutoff for received votes is 2020-01-29 09:52:30
Jan 29 04:53:26.326 [warn] Rejected vote from 204.13.164.118 ("Vote received too late, would be dangerous to count it").
2020-02-18 12:44:41 +10:00
swati fa48b0363e Revised and incorportaed comments from #33275 2020-02-17 22:47:06 +05:30
teor aebae8225b Makefile: Silence some submake logs in test-network
These logs split up the chutney SKIP, PASS, and FAIL messages,
and they don't actually contain any useful information.

Cleanup after 33334.
2020-02-17 22:03:09 +10:00
teor d71090f8e3 Travis: Produce detailed chutney diagnostics
When a Travis chutney job fails, use chutney's new "diagnostics.sh" tool
to produce detailed diagnostic output.

Closes ticket 32792.
2020-02-17 17:21:13 +10:00
teor da280a4309 Makefile: Add an IPv6 mixed chutney network
This network is used in make test-network-all and test-network-ipv6.

Closes 33334.
2020-02-17 14:55:05 +10:00
teor 85eb170923 Makefile: Add v3 onion services to the mixed network
This network is used in make test-network-all and test-network-ipv4.

Part of 33334.
2020-02-17 14:54:24 +10:00
teor 2151822bd0 Makefile: Refactor and tweak test-network
The refactor is simpler, and supports IPv6 mixed networks.

The refactor also slightly changes the order of the IPv6 and mixed
checks. But it's closer to the original order before 33280.

And if all the network lists that need a network type are empty,
we don't check if we can run that network type. (And if a network
list is empty, we don't say we're going to run an empty list.)

Part of 33334.
2020-02-17 14:47:40 +10:00
teor f231827946 Merge remote-tracking branch 'tor-github/pr/1731' 2020-02-17 13:49:23 +10:00
teor 8874d1c247 Makefile: Hide some recursive make logs
These logs break up the chutney test output.

Part of 33280.
2020-02-17 13:47:50 +10:00
teor 225613fcc2 Makefile: Quote test-network variable expansions
Also:
  * wrap some long lines
  * replace an instance of "test ... -a ..." with "test ... && test ..."

Part of 33280.
2020-02-17 13:47:34 +10:00
teor eaeda21da1 Travis: Make Chutney output more readable
* Use a shorter name for the chutney make target
* Put the chutney make target first, when using a custom target

Part of 33280.
2020-02-17 13:47:22 +10:00
teor 334469cc39 Merge branch 'bug33195_master' into ticket33280_master
Conflicts:
* Keep the changes from ticket33280_master
2020-02-17 13:46:09 +10:00
Panagiotis Vasilopoulos 674a821fbb Stop assuming that /usr/bin/python exists
Fixes 33192
2020-02-16 21:58:01 +02:00
Taylor Yu 55f088bb29 Script to check sorting of manpage entries
Add a script to help check the alphabetical ordering of option names
in a manpage.  Closes ticket 33339.
2020-02-14 11:02:16 -06:00
Nick Mathewson 455ea05bdf Rename EndOfLifeTor to ReleaseSeriesLifecycle; expand it.
Closes ticket 30917.
2020-02-14 08:47:17 -05:00
Nick Mathewson a6509cb867 Merge remote-tracking branch 'tor-github/pr/1727/head' 2020-02-14 08:20:21 -05:00
Nick Mathewson a010dbf94c Merge branch 'maint-0.4.3' 2020-02-14 08:17:16 -05:00
Nick Mathewson a79841fd83 Merge branch 'ticket33290_v2_042' into maint-0.4.3 2020-02-14 08:16:22 -05:00
Nick Mathewson 393bbd823e Merge branch 'ticket33290_v2_041' into ticket33290_v2_042 2020-02-14 08:16:01 -05:00
Nick Mathewson c1649ab015 Wipe the entire hashent structure, not just the first sizeof(void*) 2020-02-14 08:15:37 -05:00
teor ed1ee2001f dirvote: Update the comments for required protocols
Add doxygen comments to the new recommended and required subprotocol
version strings.

Add a warning to the required protocol documentation, because requiring
the wrong protocols can break the tor network. Also reference
proposal 303: When and how to remove support for protocol versions.

Part of 33285.
2020-02-14 12:49:38 +10:00
teor 98899f20ad mainloop: Explain local connections better
Some connections aren't counted for statistics or accounting,
because they have been specifically configured by the user to
local addresses.

Comment-only change.

Closes 33201.
2020-02-14 10:13:00 +10:00
swati 7920fc3569 Update tor.1.txt 2020-02-14 00:34:39 +05:30
Nick Mathewson 691d271b2e Re-order thread initialization to follow logging, and remove a comment.
lib/log no longer uses lib/thread; lib/log only uses lib/lock, which
is at a lower level.
2020-02-13 12:55:05 -05:00
Nick Mathewson 67d59d7d1f Re-order most subsystems to correspond to dependency order. 2020-02-13 12:53:15 -05:00
Nick Mathewson 1ab7c05231 Merge branch 'maint-0.4.3' 2020-02-13 10:47:43 -05:00
Nick Mathewson 6c5307e42f Merge branch 'ticket33290_v2_043' into maint-0.4.3 2020-02-13 10:47:32 -05:00
Nick Mathewson baeff46d36 Merge branch 'ticket33290_v2_042' into ticket33290_v2_043
Conflicts:
	src/core/or/circuitmux_ewma.c
2020-02-13 09:21:47 -05:00
Nick Mathewson fd1686c7d8 Merge branch 'ticket33290_v2_041' into ticket33290_v2_042 2020-02-13 09:12:48 -05:00
Nick Mathewson fff1054d17 Before freeing ewma objects, use memwipe instead of resetting magic. 2020-02-13 09:11:35 -05:00
teor c34c101212 Merge branch 'bug33195_043' into bug33195_master 2020-02-13 14:22:18 +10:00
teor 3e8e4af1ac Merge branch 'bug33195_042' into bug33195_043
Conflicts:
* Keep disable module relay from maint-0.4.3
* Keep doxygen from maint-0.4.3
* Keep the ordering from bug33195_042
2020-02-13 14:21:26 +10:00
teor f021389e92 Merge branch 'bug33195_041' into bug33195_042
Conflicts:
* Keep RUST_VERSION from maint-0.4.2
* Keep the commented-out allow_failure entries from bug33195_041
2020-02-13 13:58:13 +10:00
teor c96cf14943 Merge branch 'bug33195_035' into bug33195_041
Conflicts:
* Keep TOR_TEST_RNG_SEED from maint-0.4.1
* Keep the ordering from bug33195_035
2020-02-13 13:55:55 +10:00
teor add387c507 Travis: Sort jobs in order of speed
Putting the slowest jobs first takes full advantage of Travis
concurrency.

Closes 33194.
2020-02-13 13:52:41 +10:00
teor fc3555100f Travis: Remove a redundant distcheck job
Part of 33194.
2020-02-13 13:45:18 +10:00
teor 03650e0f60 Travis: Require the macOS IPv6 chutney job
The job was previously set to fast_finish / allow_failure, to
speed up the build.

Closes ticket 33195.
2020-02-13 13:43:59 +10:00
teor 25ecdf1409 Travis: Sort jobs in order of speed
Putting the slowest jobs first takes full advantage of Travis
concurrency.

Closes 33194.
2020-02-13 13:37:54 +10:00
teor 9ba147e9af Travis: Remove a redundant distcheck job
Part of 33194.
2020-02-13 13:37:51 +10:00
teor 82bacca4e0 Travis: Require the macOS IPv6 chutney job
The job was previously set to fast_finish / allow_failure, to
speed up the build.

Closes ticket 33195.
2020-02-13 13:37:39 +10:00
teor c847b9f1a6 Travis: Only run IPv6 chutney tests on macOS
Run the test-network-ipv6 Makefile target in the Travis CI IPv6 chutney
job. This job runs on macOS, so it's a bit slow.

Closes ticket 33303.
2020-02-13 13:12:02 +10:00
teor 02f494360a Makefile: Use chutney's latest default network
Use bridges+hs-v23 for "make test-network",
rather than using chutney's old default.

This change requires a recent version of chutney,
because the old bridges+hs-v23 did not work.
(See chutney's 33302 for details.)

Closes 28208.
2020-02-13 13:00:18 +10:00
teor 9d352028e6 Makefike: Add an IPv6 test to test-network
The IPv6 test only runs if IPv6 is available.

Also, explicitly use the bridges+hs-v2 network for the IPv4-only test.
This network was chutney's default as of January 2020.

Closes 33300.
2020-02-13 13:00:15 +10:00
teor c33ffe013b Makefile: Split test-network-all into IPv4 and IPv6
Add test-network-ipv4 and test-network-ipv6 tests to the Makefile.

These tests run the IPv4-only and dual-stack chutney flavours from
test-network-all.

Closes ticket 33280.
2020-02-13 12:59:57 +10:00
Nick Mathewson b5ccdd978e Add a dire warning about not reformatting the whole codebase yet. 2020-02-12 18:52:35 -05:00
teor e849881d3a Run "make autostyle"
But only take the changes that were caused by the rest of the 33087
branch.

Part of 33087.
2020-02-13 09:28:21 +10:00
Nick Mathewson e231d84dd5 Merge branch 'maint-0.4.3' 2020-02-12 18:26:08 -05:00
Nick Mathewson d0c3350218 Run "make autostyle". 2020-02-12 18:25:51 -05:00