]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
6 years agosendme: Add non fatal asserts for extra safety
David Goulet [Wed, 22 May 2019 15:05:36 +0000 (11:05 -0400)] 
sendme: Add non fatal asserts for extra safety

Two non fatal asserts are added in this commit. First one is to see if the
SENDME digest list kept on the circuit for validation ever grows bigger than
the maximum number of expected SENDME on a circuit (currently 10).

The second one is to know if we ever send more than one SENDME at a time on a
circuit. In theory, we shouldn't but if we ever do, the v1 implementation
wouldn't work because we only keep one single cell digest (the previous cell
to the SENDME) on the circuit/cpath. Thus, sending two SENDME consecutively
will lead to a mismatch on the other side because the same cell digest would
be use and thus the circuit would collapse.

Finally, add an extra debug log in case we emit a v0 which also includes the
consensus emit version in that case.

Part of #30428

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Always pop last SENDME digest from circuit
David Goulet [Wed, 22 May 2019 14:37:27 +0000 (10:37 -0400)] 
sendme: Always pop last SENDME digest from circuit

We must not accumulate digests on the circuit if the other end point is using
another SENDME version that is not using those digests like v0.

This commit makes it that we always pop the digest regardless of the version.

Part of #30428

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Clarify how sendme_circuit_cell_is_next() works
David Goulet [Tue, 21 May 2019 19:19:30 +0000 (15:19 -0400)] 
sendme: Clarify how sendme_circuit_cell_is_next() works

Commit 4ef8470fa5480d3b was actually reverted before because in the end we
needed to do this minus 1 check on the window.

This commit clarifies that in the code, takes the useful comment changes from
4ef8470fa5480d3b and makes sendme_circuit_cell_is_next() private since it
behaves in a very specific way that one external caller might expect.

Part of #30428.

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Properly record SENDMEs on both edges
David Goulet [Wed, 15 May 2019 14:16:05 +0000 (10:16 -0400)] 
sendme: Properly record SENDMEs on both edges

Turns out that we were only recording the "b_digest" but to have
bidirectionnal authenticated SENDMEs, we need to use the "f_digest" in the
forward cell situation.

Because of the cpath refactoring, this commit plays with the crypt_path_ and
relay_crypto_t API a little bit in order to respect the abstractions.

Previously, we would record the cell digest as the SENDME digest in the
decrypt cell function but to avoid code duplication (both directions needs to
record), we now do that right after iff the cell is recognized (at the edge).
It is now done in circuit_receive_relay_cell() instead.

We now also record the cell digest as the SENDME digest in both relay cell
encryption functions since they are split depending on the direction.
relay_encrypt_cell_outbound() and relay_encrypt_cell_inbound() need to
consider recording the cell digest depending on their direction (f vs b
digest).

Fixes #30428

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Never fallback to v0 if unknown version
David Goulet [Tue, 7 May 2019 13:44:10 +0000 (09:44 -0400)] 
sendme: Never fallback to v0 if unknown version

There was a missing cell version check against our max supported version. In
other words, we do not fallback to v0 anymore in case we do know the SENDME
version.

We can either handle it or not, never fallback to the unauthenticated version
in order to avoid gaming the authenticated logic.

Add a unit tests making sure we properly test that and also test that we can
always handle the default emit and accepted versions.

Fixes #30428

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Validate v1 SENDMEs on both client and exit side
David Goulet [Tue, 7 May 2019 13:19:41 +0000 (09:19 -0400)] 
sendme: Validate v1 SENDMEs on both client and exit side

The validation of the SENDME cell is now done as the very first thing when
receiving it for both client and exit. On failure to validate, the circuit is
closed as detailed in the specification.

Part of #30428

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agosendme: Record cell digest on both client and exit
David Goulet [Tue, 7 May 2019 13:16:39 +0000 (09:16 -0400)] 
sendme: Record cell digest on both client and exit

It turns out that only the exit side is validating the authenticated SENDME v1
logic and never the client side. Which means that if a client ever uploaded
data towards an exit, the authenticated SENDME logic wouldn't apply.

For this to work, we have to record the cell digest client side as well which
introduced a new function that supports both type of edges.

This also removes a test that is not valid anymore which was that we didn't
allow cell recording on an origin circuit (client).

Part of #30428

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'bug28780-squashed3-rebased' into bug28780_rebase
George Kadianakis [Wed, 15 May 2019 13:46:51 +0000 (16:46 +0300)] 
Merge branch 'bug28780-squashed3-rebased' into bug28780_rebase

6 years agoThe practracker beatings will continue until the files get smaller.
Mike Perry [Wed, 15 May 2019 04:47:50 +0000 (04:47 +0000)] 
The practracker beatings will continue until the files get smaller.

6 years agoAdd control port circuit ID to all pathbias bug messages.
Mike Perry [Wed, 8 May 2019 21:28:00 +0000 (21:28 +0000)] 
Add control port circuit ID to all pathbias bug messages.

To ease debugging of miscount issues, attach vanguards with --loglevel DEBUG
and obtain control port logs (or use any other control port CIRC and
CIRC_MINOR event logging mechanism).

6 years agoPathbias should continue to ignore previously ignored circs.
Mike Perry [Wed, 8 May 2019 21:21:03 +0000 (21:21 +0000)] 
Pathbias should continue to ignore previously ignored circs.

If circuit padding wants to keep a circuit open and pathbias used to ignore
it, pathbias should continue to ignore it.

This may catch other purpose-change related miscounts (such as timeout
measurement, cannibalization, onion service circuit transitions, and
vanguards).

6 years agoBug 28780: Changes file
Mike Perry [Thu, 18 Apr 2019 20:35:22 +0000 (20:35 +0000)] 
Bug 28780: Changes file

6 years agoBug 28780: Add tests
Mike Perry [Wed, 15 May 2019 04:46:05 +0000 (04:46 +0000)] 
Bug 28780: Add tests

Also test circpad expiry safeguard.

6 years agoBug 28780: Make use of purpose to keep padding circuits open.
Mike Perry [Thu, 18 Apr 2019 20:40:55 +0000 (20:40 +0000)] 
Bug 28780: Make use of purpose to keep padding circuits open.

When a circuit is marked for close, check to see if any of our padding
machines want to take ownership of it and continue padding until the machine
hits the END state.

For safety, we also ensure that machines that do not terminate are still
closed as follows: Because padding machine timers are UINT32_MAX in size, if
some sort of network event doesn't happen on a padding-only circuit within
that time, we can conclude it is deadlocked and allow
circuit_expire_old_circuits_clientside() to close it.

If too much network activity happens, then per-machine padding limits can be
used to cease padding, which will cause network cell events to cease, on the
circuit, which will cause circpad to abandon the circuit as per the above time
limit.

6 years agoBug 28780: Add purpose for keeping padding circuits open
Mike Perry [Wed, 15 May 2019 04:42:28 +0000 (04:42 +0000)] 
Bug 28780: Add purpose for keeping padding circuits open

6 years agoMerge branch 'bug29085_rebase'
George Kadianakis [Wed, 15 May 2019 12:13:08 +0000 (15:13 +0300)] 
Merge branch 'bug29085_rebase'

6 years agoPractracker beatings are even more fun when they get caused mid-PR due to a github...
Mike Perry [Wed, 15 May 2019 04:58:21 +0000 (04:58 +0000)] 
Practracker beatings are even more fun when they get caused mid-PR due to a github auto-rebase of a PR

Because github PRs choose the most recent origin/master at the time of the PR
(and for any fixups pushed to a PR later to send to CI), there are tons of
conflicts and unexpected practracker issues.

This means CI can suddenly fail after fixups to a branch that pass locally.

Then CI fails and we have to close and re-open the PR.

6 years agoCheck the token supply when we received a padding event, too.
Mike Perry [Wed, 15 May 2019 03:43:57 +0000 (03:43 +0000)] 
Check the token supply when we received a padding event, too.

We need to check here because otherwise we can try to schedule padding with no
tokens left upon the receipt of a padding event when our bins just became
empty.

6 years agoFix two typo bugs found by new state length test.
Mike Perry [Wed, 15 May 2019 03:33:53 +0000 (03:33 +0000)] 
Fix two typo bugs found by new state length test.

6 years agoAdd test to explicitly check state lengths and token counts.
Mike Perry [Wed, 15 May 2019 03:45:03 +0000 (03:45 +0000)] 
Add test to explicitly check state lengths and token counts.

Our other tests tested state lengths against padding packets, and token counts
against non-padding packets. This test checks state lengths against
non-padding packets (and also padding packets too), and checks token counts
against padding packets (and also non-padding packets too).

The next three commits are needed to make this test pass (it found 3 bugs).
Yay?

6 years agoEliminate unneeded casts to circuit_t in circpad tests.
Mike Perry [Tue, 14 May 2019 22:25:15 +0000 (22:25 +0000)] 
Eliminate unneeded casts to circuit_t in circpad tests.

6 years agoBug 29085: Changes file.
Mike Perry [Wed, 8 May 2019 00:50:52 +0000 (00:50 +0000)] 
Bug 29085: Changes file.

6 years agoBug 29085: Avoid monotime usage for rtt estimates if it is not in use.
Mike Perry [Wed, 8 May 2019 00:40:49 +0000 (00:40 +0000)] 
Bug 29085: Avoid monotime usage for rtt estimates if it is not in use.

6 years agoMake the relationship between mutable histograms and token removal explicit.
Mike Perry [Sat, 11 May 2019 03:12:33 +0000 (03:12 +0000)] 
Make the relationship between mutable histograms and token removal explicit.

6 years agoMerge branch 'maint-0.4.0'
Nick Mathewson [Wed, 15 May 2019 11:41:42 +0000 (07:41 -0400)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'maint-0.3.5' into maint-0.4.0
Nick Mathewson [Wed, 15 May 2019 11:41:42 +0000 (07:41 -0400)] 
Merge branch 'maint-0.3.5' into maint-0.4.0

6 years agoMerge branch 'bug30475_035' into maint-0.3.5
Nick Mathewson [Wed, 15 May 2019 11:41:34 +0000 (07:41 -0400)] 
Merge branch 'bug30475_035' into maint-0.3.5

6 years agoMerge branch 'maint-0.4.0'
George Kadianakis [Wed, 15 May 2019 10:46:20 +0000 (13:46 +0300)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'tor-github/pr/1013' into maint-0.4.0
George Kadianakis [Wed, 15 May 2019 10:45:39 +0000 (13:45 +0300)] 
Merge branch 'tor-github/pr/1013' into maint-0.4.0

6 years agoBug 29085: Minor unit test updates for refactoring.
Mike Perry [Tue, 7 May 2019 23:37:33 +0000 (23:37 +0000)] 
Bug 29085: Minor unit test updates for refactoring.

Deliver nonpadding events instead of calling token removal functions.

6 years agoBug 29085: Refactor padding sent accounting out of callback.
Mike Perry [Sat, 11 May 2019 03:26:53 +0000 (03:26 +0000)] 
Bug 29085: Refactor padding sent accounting out of callback.

This commit moves code that updates the state length and padding limit counts
out from the callback to its own function, for clarity.

It does not change functionality.

6 years agoBug 29085: Refactor non-padding accounting out of token removal.
Mike Perry [Sat, 11 May 2019 02:51:14 +0000 (02:51 +0000)] 
Bug 29085: Refactor non-padding accounting out of token removal.

This commit moves the padding state limit checks and the padding rate limit
checks out of the token removal codepath, and causes all three functions to
get called from a single circpad_machine_count_nonpadding_sent() function.

It does not change functionality.

6 years agoMerge remote-tracking branch 'tor-github/pr/1004'
Nick Mathewson [Tue, 14 May 2019 15:43:10 +0000 (11:43 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1004'

6 years agoMerge branch 'tor-github/pr/1006'
George Kadianakis [Tue, 14 May 2019 12:15:09 +0000 (15:15 +0300)] 
Merge branch 'tor-github/pr/1006'

6 years agoFix a compilation warning: function does not have to be STATIC.
Nick Mathewson [Mon, 13 May 2019 18:34:16 +0000 (14:34 -0400)] 
Fix a compilation warning: function does not have to be STATIC.

6 years agoMerge branch 'bug28683_30173_29203_squashed'
Nick Mathewson [Mon, 13 May 2019 18:33:31 +0000 (14:33 -0400)] 
Merge branch 'bug28683_30173_29203_squashed'

6 years agoThe practracker beatings will continue until the functions get smaller.
Mike Perry [Thu, 18 Apr 2019 18:14:31 +0000 (18:14 +0000)] 
The practracker beatings will continue until the functions get smaller.

6 years agoChanges file for bugs28693+30173+29203.
Mike Perry [Wed, 17 Apr 2019 23:37:22 +0000 (23:37 +0000)] 
Changes file for bugs28693+30173+29203.

6 years agoTests for bugs 28683, 30173, and 29203.
Mike Perry [Wed, 17 Apr 2019 23:21:54 +0000 (23:21 +0000)] 
Tests for bugs 28683, 30173, and 29203.

6 years agoBug 29203: Provide ReducedCircuitPadding torrc and consensus params
Mike Perry [Wed, 17 Apr 2019 06:09:06 +0000 (06:09 +0000)] 
Bug 29203: Provide ReducedCircuitPadding torrc and consensus params

6 years agoBug 28693: Provide Torrc option to disable circuit padding.
Mike Perry [Wed, 17 Apr 2019 05:51:39 +0000 (05:51 +0000)] 
Bug 28693: Provide Torrc option to disable circuit padding.

6 years agoMerge remote-tracking branch 'tor-github/pr/998'
Nick Mathewson [Mon, 13 May 2019 18:25:54 +0000 (14:25 -0400)] 
Merge remote-tracking branch 'tor-github/pr/998'

6 years agosendme: Fix coverity CID 1444999
David Goulet [Mon, 13 May 2019 14:00:39 +0000 (10:00 -0400)] 
sendme: Fix coverity CID 1444999

The code flow in theory can end up with a layer_hint to be NULL but in
practice it should never happen because with an origin circuit, we must have
the layer_hint.

Just in case, BUG() on it if we ever end up in this situation and recover by
closing the circuit.

Fixes #30467.

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'tor-github/pr/976'
David Goulet [Mon, 13 May 2019 11:34:00 +0000 (07:34 -0400)] 
Merge branch 'tor-github/pr/976'

6 years agoDon't pass a NULL into a %s when logging client auth file load failure
Nick Mathewson [Fri, 10 May 2019 21:47:43 +0000 (17:47 -0400)] 
Don't pass a NULL into a %s when logging client auth file load failure

Fortunately, in 0.3.5.1-alpha we improved logging for various
failure cases involved with onion service client auth.

Unfortunately, for this one, we freed the file right before logging
its name.

Fortunately, tor_free() sets its pointer to NULL, so we didn't have
a use-after-free bug.

Unfortunately, passing NULL to %s is not defined.

Fortunately, GCC 9.1.1 caught the issue!

Unfortunately, nobody has actually tried building Tor with GCC 9.1.1
before. Or if they had, they didn't report the warning.

Fixes bug 30475; bugfix on 0.3.5.1-alpha.

6 years agoMerge branch 'tor-github/pr/973'
George Kadianakis [Fri, 10 May 2019 09:49:01 +0000 (12:49 +0300)] 
Merge branch 'tor-github/pr/973'

6 years agoMerge branch 'tor-github/pr/1000'
David Goulet [Wed, 8 May 2019 12:02:28 +0000 (08:02 -0400)] 
Merge branch 'tor-github/pr/1000'

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoOnly call tor_addr_parse() in circuit_is_acceptable() when needed
Neel Chauhan [Tue, 7 May 2019 15:24:53 +0000 (11:24 -0400)] 
Only call tor_addr_parse() in circuit_is_acceptable() when needed

6 years agoMerge branch 'tor-github/pr/994'
David Goulet [Tue, 7 May 2019 12:02:39 +0000 (08:02 -0400)] 
Merge branch 'tor-github/pr/994'

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge remote-tracking branch 'tor-github/pr/923'
Nick Mathewson [Mon, 6 May 2019 21:16:37 +0000 (17:16 -0400)] 
Merge remote-tracking branch 'tor-github/pr/923'

6 years agoHiding crypt_path_t: Add changes file.
George Kadianakis [Mon, 6 May 2019 14:54:51 +0000 (17:54 +0300)] 
Hiding crypt_path_t: Add changes file.

6 years agosendme: Add FlowCtrl protover value
David Goulet [Fri, 3 May 2019 17:24:06 +0000 (13:24 -0400)] 
sendme: Add FlowCtrl protover value

See proposal 289 section 4.3 for more details.

It describes the flow control protocol at the circuit and stream level. If
there is no FlowCtrl protocol version, tor supports the unauthenticated flow
control features from its supported Relay protocols.

At this commit, relay will start advertising FlowCtrl=1 meaning they support
authenticated SENDMEs v1.

Closes #30363

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'tor-github/pr/954'
David Goulet [Fri, 3 May 2019 17:11:03 +0000 (13:11 -0400)] 
Merge branch 'tor-github/pr/954'

6 years agoHiding crypt_path_t: Hide 'crypto' usage in sendme.c
George Kadianakis [Fri, 3 May 2019 15:27:58 +0000 (18:27 +0300)] 
Hiding crypt_path_t: Hide 'crypto' usage in sendme.c

6 years agoHiding crypt_path_t: Change code to use the privatization macro.
George Kadianakis [Fri, 26 Apr 2019 11:20:26 +0000 (14:20 +0300)] 
Hiding crypt_path_t: Change code to use the privatization macro.

6 years agoHiding crypt_path_t: Hiding 'crypto' using a macro.
George Kadianakis [Fri, 26 Apr 2019 11:19:14 +0000 (14:19 +0300)] 
Hiding crypt_path_t: Hiding 'crypto' using a macro.

6 years agoRevert "Hiding crypt_path_t: Ensure that ->private is initialized."
George Kadianakis [Fri, 26 Apr 2019 11:28:03 +0000 (14:28 +0300)] 
Revert "Hiding crypt_path_t: Ensure that ->private is initialized."

This reverts commit 7497c9193a0f2c891a0802bf5fbe73cf7ec1ca99.

6 years agoRevert "Hiding crypt_path_t: Create a constructor for crypt_path_t."
George Kadianakis [Fri, 26 Apr 2019 11:26:22 +0000 (14:26 +0300)] 
Revert "Hiding crypt_path_t: Create a constructor for crypt_path_t."

This reverts commit ab8b80944967ee5a6a0c45dbf61839cf257bfe44.

6 years agoHiding crypt_path_t: Some TODO notes for future directions.
George Kadianakis [Tue, 9 Apr 2019 15:04:15 +0000 (18:04 +0300)] 
Hiding crypt_path_t: Some TODO notes for future directions.

6 years agoHiding crypt_path_t: Move some more crypt_path-specific functions.
George Kadianakis [Tue, 9 Apr 2019 14:57:04 +0000 (17:57 +0300)] 
Hiding crypt_path_t: Move some more crypt_path-specific functions.

- Move test-only cpath_get_n_hops() to crypt_path.c.
- Move onion_next_hop_in_cpath() and rename to cpath_get_next_non_open_hop().

The latter function was directly accessing cpath->state, and it's a first step
at hiding ->state.

6 years agoHiding crypt_path_t: Rename some functions to fit the crypt_path API.
George Kadianakis [Tue, 9 Apr 2019 09:38:19 +0000 (12:38 +0300)] 
Hiding crypt_path_t: Rename some functions to fit the crypt_path API.

Some of these functions are now public and cpath-specific so their name should
signify the fact they are part of the cpath module:

assert_cpath_layer_ok -> cpath_assert_layer_ok
assert_cpath_ok -> cpath_assert_ok
onion_append_hop -> cpath_append_hop
circuit_init_cpath_crypto -> cpath_init_circuit_crypto
circuit_free_cpath_node -> cpath_free
onion_append_to_cpath -> cpath_extend_linked_list

6 years agoHiding crypt_path_t: Trivial changes to satisfy check-local.
George Kadianakis [Mon, 8 Apr 2019 13:36:12 +0000 (16:36 +0300)] 
Hiding crypt_path_t: Trivial changes to satisfy check-local.

6 years agoHiding crypt_path_t: Ensure that ->private is initialized.
George Kadianakis [Wed, 10 Apr 2019 13:28:29 +0000 (16:28 +0300)] 
Hiding crypt_path_t: Ensure that ->private is initialized.

Now that we are using a constructor we should be more careful that we are
always using the constructor to initialize crypt_path_t, so make sure that
->private is initialized.

6 years agoHiding crypt_path_t: Create a constructor for crypt_path_t.
George Kadianakis [Mon, 8 Apr 2019 13:18:44 +0000 (16:18 +0300)] 
Hiding crypt_path_t: Create a constructor for crypt_path_t.

We are using an opaque pointer so the structure needs to be allocated on the
heap. This means we now need a constructor for crypt_path_t.

Also modify all places initializing a crypt_path_t to use the constructor.

6 years agoHiding crypt_path_t: Fixup broken unittests.
George Kadianakis [Mon, 8 Apr 2019 12:43:23 +0000 (15:43 +0300)] 
Hiding crypt_path_t: Fixup broken unittests.

6 years agoHiding crypt_path_t: Move the free func in crypt_path.c.
George Kadianakis [Mon, 8 Apr 2019 12:37:02 +0000 (15:37 +0300)] 
Hiding crypt_path_t: Move the free func in crypt_path.c.

Again everything is moved, apart from a free line using ->private.

6 years agoHiding crypt_path_t: Move some more init funcs in crypt_path.c.
George Kadianakis [Mon, 8 Apr 2019 12:32:23 +0000 (15:32 +0300)] 
Hiding crypt_path_t: Move some more init funcs in crypt_path.c.

Everything is moved, but the argument of the function is edited to access
->private->crypto.

6 years agoHiding crypt_path_t: Start with crypt_path.crypto .
George Kadianakis [Mon, 8 Apr 2019 12:16:37 +0000 (15:16 +0300)] 
Hiding crypt_path_t: Start with crypt_path.crypto .

Create some functions to eventually be able to hide crypt_path_t.crypto.

6 years agoHiding crypt_path_t: Move init functions to crypt_path.c.
George Kadianakis [Mon, 8 Apr 2019 10:01:18 +0000 (13:01 +0300)] 
Hiding crypt_path_t: Move init functions to crypt_path.c.

This commit only moves code.

6 years agoHiding crypt_path_t: Move assert functions in crypt_path.c.
George Kadianakis [Mon, 8 Apr 2019 09:46:40 +0000 (12:46 +0300)] 
Hiding crypt_path_t: Move assert functions in crypt_path.c.

This commit only moves code, and makes one function public.

6 years agoHiding crypt_path_t: Introduce opaque crypt_path_private_t .
George Kadianakis [Mon, 8 Apr 2019 11:35:02 +0000 (14:35 +0300)] 
Hiding crypt_path_t: Introduce opaque crypt_path_private_t .

This will be our base for incrementally hiding crypt_path_t.

6 years agoMerge branch 'tor-github/pr/984'
David Goulet [Fri, 3 May 2019 14:56:12 +0000 (10:56 -0400)] 
Merge branch 'tor-github/pr/984'

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoNote how to update the new website in the ReleasingTor.md instructions
Nick Mathewson [Fri, 3 May 2019 12:51:28 +0000 (08:51 -0400)] 
Note how to update the new website in the ReleasingTor.md instructions

6 years agoMerge branch 'maint-0.4.0'
Nick Mathewson [Thu, 2 May 2019 18:33:09 +0000 (14:33 -0400)] 
Merge branch 'maint-0.4.0'

"ours" to avoid version bump.

6 years agoBump to 0.4.0.5-dev
Nick Mathewson [Thu, 2 May 2019 18:32:55 +0000 (14:32 -0400)] 
Bump to 0.4.0.5-dev

6 years agoforward-port changelog and releasenotes from 0.4.0.5
Nick Mathewson [Thu, 2 May 2019 18:32:24 +0000 (14:32 -0400)] 
forward-port changelog and releasenotes from 0.4.0.5

6 years agoMerge branch 'tor-github/pr/986'
George Kadianakis [Thu, 2 May 2019 15:12:52 +0000 (18:12 +0300)] 
Merge branch 'tor-github/pr/986'

6 years agosendme: Add changes file for prop289
David Goulet [Thu, 2 May 2019 15:10:41 +0000 (11:10 -0400)] 
sendme: Add changes file for prop289

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'tor-github/pr/999'
George Kadianakis [Thu, 2 May 2019 14:48:09 +0000 (17:48 +0300)] 
Merge branch 'tor-github/pr/999'

6 years agoAdd comments to include.am files to note where new sources go
Nick Mathewson [Thu, 2 May 2019 13:37:18 +0000 (09:37 -0400)] 
Add comments to include.am files to note where new sources go

This mechanism isn't perfect, and sometimes it will guess wrong,
but it will help our automation.

6 years agoChanges file for improved dirauth modularity (ticket 30345)
Nick Mathewson [Tue, 30 Apr 2019 18:59:28 +0000 (14:59 -0400)] 
Changes file for improved dirauth modularity (ticket 30345)

6 years agopractracker updates.
Nick Mathewson [Tue, 30 Apr 2019 17:04:18 +0000 (13:04 -0400)] 
practracker updates.

6 years agoRemove some now-needless dirauth includes
Nick Mathewson [Tue, 30 Apr 2019 16:58:00 +0000 (12:58 -0400)] 
Remove some now-needless dirauth includes

6 years agoMake keypin.c dirauth-only
Nick Mathewson [Tue, 30 Apr 2019 16:52:00 +0000 (12:52 -0400)] 
Make keypin.c dirauth-only

6 years agoMake the bwauth.c module dirauth-only.
Nick Mathewson [Tue, 30 Apr 2019 16:48:00 +0000 (12:48 -0400)] 
Make the bwauth.c module dirauth-only.

6 years agoMove voteflags.[ch] to become dirauth only.
Nick Mathewson [Tue, 30 Apr 2019 16:42:33 +0000 (12:42 -0400)] 
Move voteflags.[ch] to become dirauth only.

For various reasons, this was a nontrivial movement.  There are
several places in the code where we do something like "update the
flags on this routerstatus or node if we're an authority", and at
least one where we pretended to be an authority when we weren't.

6 years agosendme: Improve logging messages
David Goulet [Thu, 2 May 2019 12:58:58 +0000 (08:58 -0400)] 
sendme: Improve logging messages

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoRemove changes files that are already in 0.4.0.5 or earlier
Nick Mathewson [Thu, 2 May 2019 12:42:01 +0000 (08:42 -0400)] 
Remove changes files that are already in 0.4.0.5 or earlier

6 years agoMerge remote-tracking branch 'tor-github/pr/989'
Nick Mathewson [Thu, 2 May 2019 12:36:09 +0000 (08:36 -0400)] 
Merge remote-tracking branch 'tor-github/pr/989'

6 years agoThe practracker beatings will continue until our files get smaller.
Mike Perry [Wed, 1 May 2019 21:04:40 +0000 (21:04 +0000)] 
The practracker beatings will continue until our files get smaller.

6 years agoChanges file for bug29231.
Mike Perry [Wed, 1 May 2019 21:03:23 +0000 (21:03 +0000)] 
Changes file for bug29231.

6 years agoBug 29231: Report correct padding write totals and enabled totals.
Mike Perry [Wed, 1 May 2019 21:00:26 +0000 (21:00 +0000)] 
Bug 29231: Report correct padding write totals and enabled totals.

6 years agoMerge remote-tracking branch 'tor-github/pr/950'
Nick Mathewson [Wed, 1 May 2019 13:11:20 +0000 (09:11 -0400)] 
Merge remote-tracking branch 'tor-github/pr/950'

6 years agoMerge branch 'maint-0.4.0'
Nick Mathewson [Tue, 30 Apr 2019 19:54:03 +0000 (15:54 -0400)] 
Merge branch 'maint-0.4.0'

"ours" to avoid version bump

6 years agobump to 0.4.0.5
Nick Mathewson [Tue, 30 Apr 2019 19:53:53 +0000 (15:53 -0400)] 
bump to 0.4.0.5

6 years agoMake the reachability.c module dirauth-only.
Nick Mathewson [Tue, 30 Apr 2019 15:33:00 +0000 (11:33 -0400)] 
Make the reachability.c module dirauth-only.

6 years agoMake the guardfraction.c module dirauth-only.
Nick Mathewson [Tue, 30 Apr 2019 15:31:57 +0000 (11:31 -0400)] 
Make the guardfraction.c module dirauth-only.

6 years agoMake the process_descs.c module dirauth-only.
Nick Mathewson [Tue, 30 Apr 2019 15:31:03 +0000 (11:31 -0400)] 
Make the process_descs.c module dirauth-only.

6 years agoMake the dsigs_parse.c module dirauth-only.
Nick Mathewson [Tue, 30 Apr 2019 15:29:31 +0000 (11:29 -0400)] 
Make the dsigs_parse.c module dirauth-only.

6 years agoMake the recommend_pkg file dirauth-only.
Nick Mathewson [Tue, 30 Apr 2019 15:25:41 +0000 (11:25 -0400)] 
Make the recommend_pkg file dirauth-only.