]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
6 years agominor changelog edits
Nick Mathewson [Wed, 5 Jun 2019 13:43:43 +0000 (09:43 -0400)] 
minor changelog edits

6 years agoReplace a missing end-of-comment string
Nick Mathewson [Wed, 5 Jun 2019 13:35:45 +0000 (09:35 -0400)] 
Replace a missing end-of-comment string

This happened when I went to fix long lines after running "make
autostyle".

6 years agoRegenerate practracker excpetions file
Nick Mathewson [Wed, 5 Jun 2019 13:34:14 +0000 (09:34 -0400)] 
Regenerate practracker excpetions file

6 years agoRun "make autostyle."
Nick Mathewson [Wed, 5 Jun 2019 13:33:35 +0000 (09:33 -0400)] 
Run "make autostyle."

6 years agoBump to 0.4.1.2-alpha
Nick Mathewson [Wed, 5 Jun 2019 13:25:21 +0000 (09:25 -0400)] 
Bump to 0.4.1.2-alpha

6 years agoRewrap the changelog
Nick Mathewson [Wed, 5 Jun 2019 13:24:42 +0000 (09:24 -0400)] 
Rewrap the changelog

6 years agoStart a changelog for 0.4.1.2-alpha
Nick Mathewson [Wed, 5 Jun 2019 13:24:18 +0000 (09:24 -0400)] 
Start a changelog for 0.4.1.2-alpha

6 years agopractracker update
Nick Mathewson [Wed, 5 Jun 2019 13:06:43 +0000 (09:06 -0400)] 
practracker update

6 years agoMerge remote-tracking branch 'tor-github/pr/1053'
Nick Mathewson [Wed, 5 Jun 2019 13:04:09 +0000 (09:04 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1053'

6 years agoMerge branch 'bug30286_2_squashed'
Nick Mathewson [Wed, 5 Jun 2019 12:32:39 +0000 (08:32 -0400)] 
Merge branch 'bug30286_2_squashed'

6 years agoDocument TOR_UPSTREAM_REMOTE_NAME env variable
rl1987 [Fri, 17 May 2019 16:24:26 +0000 (19:24 +0300)] 
Document TOR_UPSTREAM_REMOTE_NAME env variable

6 years agoFix typo in #29670 changes file.
George Kadianakis [Wed, 5 Jun 2019 11:56:28 +0000 (14:56 +0300)] 
Fix typo in #29670 changes file.

6 years agoMerge branch 'tor-github/pr/1072'
George Kadianakis [Wed, 5 Jun 2019 11:40:38 +0000 (14:40 +0300)] 
Merge branch 'tor-github/pr/1072'

6 years agoMerge branch 'tor-github/pr/1067'
David Goulet [Tue, 4 Jun 2019 13:57:03 +0000 (09:57 -0400)] 
Merge branch 'tor-github/pr/1067'

6 years agoupdate practracker
Nick Mathewson [Tue, 4 Jun 2019 12:29:43 +0000 (08:29 -0400)] 
update practracker

6 years agoMerge branch 'bug29670_035' into bug29670_041
Nick Mathewson [Tue, 4 Jun 2019 12:29:05 +0000 (08:29 -0400)] 
Merge branch 'bug29670_035' into bug29670_041

6 years agosendme: Do not decrement window in a log_debug()
David Goulet [Mon, 3 Jun 2019 18:31:51 +0000 (14:31 -0400)] 
sendme: Do not decrement window in a log_debug()

If "Log debug ..." is not set, the decrement never happens. This lead to the
package/deliver window to be out of sync at the stream level and thus breaking
the connection after 50+ cells.

Fixes #30628

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agofix some simple typos
Roger Dingledine [Sat, 1 Jun 2019 19:37:51 +0000 (15:37 -0400)] 
fix some simple typos

6 years agoPractracker excpetions.
Nick Mathewson [Fri, 31 May 2019 16:41:44 +0000 (12:41 -0400)] 
Practracker excpetions.

6 years agoMerge branch 'bug29875_035' into bug29875_master
Nick Mathewson [Fri, 31 May 2019 16:40:43 +0000 (12:40 -0400)] 
Merge branch 'bug29875_035' into bug29875_master

6 years agochanges file for bug 29875.
Nick Mathewson [Fri, 31 May 2019 16:39:52 +0000 (12:39 -0400)] 
changes file for bug 29875.

6 years agonum_bridges_usable(): only count configured bridges.
Nick Mathewson [Fri, 31 May 2019 16:19:29 +0000 (12:19 -0400)] 
num_bridges_usable(): only count configured bridges.

When this function was implemented, it counted all the entry guards
in the bridge set.  But this included previously configured bridges,
as well as currently configured ones!  Instead, only count the
_filtered_ bridges (ones that are configured and possibly reachable)
as maybe usable.

Fixes bug 29875; bugfix on 0.3.0.1-alpha.

6 years agoConsider dir info to have changed when the bridges change
Nick Mathewson [Fri, 31 May 2019 15:46:58 +0000 (11:46 -0400)] 
Consider dir info to have changed when the bridges change

Otherwise, we won't realize that we haven't got enough bridge
information to build circuits.  Part of a fix for ticket 29875.

6 years agotest: Add test_hs_circ.c for HS circuit testing
David Goulet [Fri, 31 May 2019 14:43:01 +0000 (10:43 -0400)] 
test: Add test_hs_circ.c for HS circuit testing

For now, only tests HS circuit repurpose function.

Part of #29034

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'tor-github/pr/1059'
George Kadianakis [Thu, 30 May 2019 18:01:59 +0000 (21:01 +0300)] 
Merge branch 'tor-github/pr/1059'

6 years agoMerge branch 'tor-github/pr/1057'
David Goulet [Thu, 30 May 2019 16:58:35 +0000 (12:58 -0400)] 
Merge branch 'tor-github/pr/1057'

6 years agochanges file for 30629
Nick Mathewson [Thu, 30 May 2019 16:58:12 +0000 (12:58 -0400)] 
changes file for 30629

6 years agoMerge branch 'tor-github/pr/1055'
David Goulet [Thu, 30 May 2019 16:53:52 +0000 (12:53 -0400)] 
Merge branch 'tor-github/pr/1055'

6 years agoMerge branch 'tor-github/pr/1054'
David Goulet [Thu, 30 May 2019 13:59:21 +0000 (09:59 -0400)] 
Merge branch 'tor-github/pr/1054'

6 years agoMerge branch 'tor-github/pr/1049'
David Goulet [Thu, 30 May 2019 13:56:18 +0000 (09:56 -0400)] 
Merge branch 'tor-github/pr/1049'

6 years agoMerge branch 'tor-github/pr/1032'
George Kadianakis [Wed, 29 May 2019 18:28:04 +0000 (21:28 +0300)] 
Merge branch 'tor-github/pr/1032'

6 years agoMerge branch 'tor-github/pr/1037'
George Kadianakis [Wed, 29 May 2019 18:25:32 +0000 (21:25 +0300)] 
Merge branch 'tor-github/pr/1037'

6 years agoMerge branch 'maint-0.4.0'
George Kadianakis [Wed, 29 May 2019 18:20:02 +0000 (21:20 +0300)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'tor-github/pr/924' into maint-0.4.0
George Kadianakis [Wed, 29 May 2019 18:19:56 +0000 (21:19 +0300)] 
Merge branch 'tor-github/pr/924' into maint-0.4.0

6 years agoShutdown libevent _after_ the subsystems.
Nick Mathewson [Wed, 29 May 2019 15:25:47 +0000 (11:25 -0400)] 
Shutdown libevent _after_ the subsystems.

This is necessary since shutting down libevent frees some pointer
that the subsystems want to free themselves. A longer term solution
will be to turn the evloop module into a subsystem itself, but for
now it is best to do the minimal fix.

Fixes bug 30629; bugfix on 0.4.1.1-alpha.

6 years agoMake get_proxy_type() connection-specific
Nick Mathewson [Wed, 29 May 2019 15:00:09 +0000 (11:00 -0400)] 
Make get_proxy_type() connection-specific

Previously, we were looking at our global settings to see what kind
of proxy we had.  But doing this would sometimes give us the wrong
results when we had ClientTransportPlugin configured but we weren't
using it for a particular connection.  In several places in the
code, we had added checks to see if we were _really_ using a PT or
whether we were using a socks proxy, but we had forgotten to do so
in at least once case.  Instead, since every time we call this
function we are asking about a single connection, it is probably
best just to make this function connection-specific.

Fixes bug 29670; bugfix on 0.2.6.2-alpha.

6 years agoRemove want_cmddata from HSFETCH, which does not in fact want data
Nick Mathewson [Wed, 29 May 2019 14:10:57 +0000 (10:10 -0400)] 
Remove want_cmddata from HSFETCH, which does not in fact want data

This looks a copy-and-paste error to me.  Fixes bug 30646; bugfix on
0.4.1.1-alpha.

6 years agoMerge branch 'ticket30561_029' into ticket30561_035
Nick Mathewson [Wed, 29 May 2019 13:43:20 +0000 (09:43 -0400)] 
Merge branch 'ticket30561_029' into ticket30561_035

6 years agohs: Implement a helper to repurpose a circuit
David Goulet [Tue, 28 May 2019 13:44:06 +0000 (09:44 -0400)] 
hs: Implement a helper to repurpose a circuit

When we repurpose a hidden service circuit, we need to clean up from the HS
circuit map and any HS related data structured contained in the circuit.

This commit adds an helper function that does it when repurposing a hidden
service circuit.

Fixes #29034

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoTweak comments in tor_vasprintf(), and add a changes file for 30651
Nick Mathewson [Wed, 29 May 2019 13:38:32 +0000 (09:38 -0400)] 
Tweak comments in tor_vasprintf(), and add a changes file for 30651

6 years agoFixed tor_vasprintf on systems without vasprintf.
Tobias Stoeckmann [Wed, 29 May 2019 13:33:24 +0000 (09:33 -0400)] 
Fixed tor_vasprintf on systems without vasprintf.

If tor is compiled on a system with neither vasprintf nor _vscprintf,
the fallback implementation exposes a logic flaw which prevents
proper usage of strings longer than 127 characters:

* tor_vsnprintf returns -1 if supplied buffer is not large enough,
  but tor_vasprintf uses this function to retrieve required length
* the result of tor_vsnprintf is not properly checked for negative
  return values

Both aspects together could in theory lead to exposure of uninitialized
stack memory in the resulting string. This requires an invalid format
string or data that exceeds integer limitations.

Fortunately tor is not even able to run with this implementation because
it runs into asserts early on during startup. Also the unit tests fail
during a "make check" run.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
  [backported to 0.2.9 by nickm]

6 years agoChanges file for bug 30614
Nick Mathewson [Wed, 29 May 2019 13:05:26 +0000 (09:05 -0400)] 
Changes file for bug 30614

6 years agoUse MAP_INHERIT_ZERO or MAP_INHERIT_NONE if available.
Taylor R Campbell [Sat, 25 May 2019 03:55:24 +0000 (03:55 +0000)] 
Use MAP_INHERIT_ZERO or MAP_INHERIT_NONE if available.

Fixes assertion failure in tests on NetBSD:

slow/prob_distr/stochastic_log_logistic: [forking] May 25 03:56:58.091 [err] tor_assertion_failed_(): Bug: src/lib/crypt_ops/crypto_rand_fast.c:184: crypto_fast_rng_new_from_seed: Assertion inherit != INHERIT_RES_KEEP failed; aborting. (on Tor 0.4.1.1-alpha-dev 29955f13e5bc8e61)
May 25 03:56:58.091 [err] Bug: Assertion inherit != INHERIT_RES_KEEP failed in crypto_fast_rng_new_from_seed at src/lib/crypt_ops/crypto_rand_fast.c:184: . (Stack trace not available) (on Tor 0.4.1.1-alpha-dev 29955f13e5bc8e61)
[Lost connection!]

6 years agoTrivial fix for a trivial warning with gcc 9.1.1
Nick Mathewson [Tue, 28 May 2019 23:45:50 +0000 (19:45 -0400)] 
Trivial fix for a trivial warning with gcc 9.1.1

Fix on 4e3d144fb0940d8ee5a89427d471ea3656e8e122; bug not in any
released Tor.

6 years agoMerge branch 'tor-github/pr/1047'
David Goulet [Tue, 28 May 2019 18:59:07 +0000 (14:59 -0400)] 
Merge branch 'tor-github/pr/1047'

6 years agoMerge branch 'tor-github/pr/1042'
George Kadianakis [Mon, 27 May 2019 11:22:01 +0000 (14:22 +0300)] 
Merge branch 'tor-github/pr/1042'

6 years agoMerge branch 'tor-github/pr/1043'
George Kadianakis [Mon, 27 May 2019 11:20:51 +0000 (14:20 +0300)] 
Merge branch 'tor-github/pr/1043'

6 years agoTests for deciding how full our relay cells should be
Nick Mathewson [Thu, 23 May 2019 13:29:24 +0000 (09:29 -0400)] 
Tests for deciding how full our relay cells should be

6 years agoMake sure that we send at least some random data in RELAY_DATA cells
Nick Mathewson [Fri, 17 May 2019 15:03:16 +0000 (11:03 -0400)] 
Make sure that we send at least some random data in RELAY_DATA cells

Proposal 289 prevents SENDME-flooding by requiring the other side to
authenticate the data it has received.  But this data won't actually
be random if they are downloading a known resource.  "No problem",
we said, "let's fell the empty parts of our cells with some
randomness!" and we did that in #26871.

Unfortunately, if the relay data payloads are all completely full,
there won't be any empty parts for us to randomize.

Therefore, we now pick random "randomness windows" between
CIRCWINDOW_INCREMENT/2 and CIRCWINDOW_INCREMENT. We remember whether we have
sent a cell containing at least 16 bytes of randomness in that window.  If we
haven't, then when the window is exhausted, we send one.  (This window approach
is designed to lower the number of rng checks we have to do.  The number 16 is
pulled out of a hat to change the attacker's guessing difficulty to
"impossible".)

Implements 28646.

6 years agotrivial whitespace fixes
Roger Dingledine [Sun, 26 May 2019 21:32:42 +0000 (17:32 -0400)] 
trivial whitespace fixes

6 years agochanges file for test coverage
Nick Mathewson [Fri, 24 May 2019 11:42:59 +0000 (07:42 -0400)] 
changes file for test coverage

6 years agocov-test-determinism: use the same RNG seed as in travis.yml
Nick Mathewson [Thu, 23 May 2019 18:36:01 +0000 (14:36 -0400)] 
cov-test-determinism: use the same RNG seed as in travis.yml

We added this facility so that we could get deterministic PRNG
behavior for coverage testing on tests that use a replaced PRNG.
We need to have our coverage determinism tool test for this as well.

6 years agoCoverage: do not include test-rebind in coverage builds.
Nick Mathewson [Wed, 15 May 2019 18:58:46 +0000 (14:58 -0400)] 
Coverage: do not include test-rebind in coverage builds.

Because it invokes the Tor mainloop, it does unpredictable things to
test coverage of a lot of code that it doesn't actually test at
all.  (It is more an integration test than anything else.)

6 years agoIn coverage builds, use branch-free timeradd() and timersub()
Nick Mathewson [Wed, 15 May 2019 12:28:25 +0000 (08:28 -0400)] 
In coverage builds, use branch-free timeradd() and timersub()

The ordinary definitions of timeradd() and timersub() contain a
branch. However, in coverage builds, this means that we get spurious
complaints about partially covered basic blocks, in a way that makes
our coverage determinism harder to check.

6 years agoIn coverage builds, avoid basic-block complexity in log_debug
Nick Mathewson [Wed, 15 May 2019 12:27:02 +0000 (08:27 -0400)] 
In coverage builds, avoid basic-block complexity in log_debug

Ordinarily we skip calling log_fn(LOG_DEBUG,...) if debug logging is
completely disabled.  However, in coverage builds, this means that
we get spurious complaints about partially covered basic blocks, in
a way that makes our coverage determinism harder to check.

6 years agoMerge branch 'tor-github/pr/1022'
David Goulet [Thu, 23 May 2019 13:50:28 +0000 (09:50 -0400)] 
Merge branch 'tor-github/pr/1022'

6 years agoMerge branch 'tor-github/pr/1034'
David Goulet [Thu, 23 May 2019 13:40:07 +0000 (09:40 -0400)] 
Merge branch 'tor-github/pr/1034'

6 years agoMerge branch 'tor-github/pr/988'
David Goulet [Thu, 23 May 2019 13:30:36 +0000 (09:30 -0400)] 
Merge branch 'tor-github/pr/988'

6 years agoExtract length-deciding function from package_raw_inbuf.
Nick Mathewson [Fri, 17 May 2019 14:29:35 +0000 (10:29 -0400)] 
Extract length-deciding function from package_raw_inbuf.

6 years agorefactor logic to decide how much to package from inbuf
Roger Dingledine [Thu, 19 Jul 2018 01:00:27 +0000 (21:00 -0400)] 
refactor logic to decide how much to package from inbuf

no actual changes in behavior

6 years agoOnly reject POSTDESCRIPTOR purpose= when the purpose is unrecognized
Nick Mathewson [Thu, 23 May 2019 12:24:29 +0000 (08:24 -0400)] 
Only reject POSTDESCRIPTOR purpose= when the purpose is unrecognized

Fixes bug 30580; bugfix on 0.4.1.1-alpha.

6 years agoNow this repository is full of 0.4.1.1-alpha-dev
Nick Mathewson [Wed, 22 May 2019 22:07:29 +0000 (18:07 -0400)] 
Now this repository is full of 0.4.1.1-alpha-dev

6 years agocircuitpadding tests: Use tt_i64_op() to compare int64_t values tor-0.4.1.1-alpha
Nick Mathewson [Wed, 22 May 2019 19:19:24 +0000 (15:19 -0400)] 
circuitpadding tests: Use tt_i64_op() to compare int64_t values

Bug not in any released Tor.

6 years agoMore 0.4.1.1-alpha hangelogs edits
Nick Mathewson [Wed, 22 May 2019 17:57:34 +0000 (13:57 -0400)] 
More 0.4.1.1-alpha hangelogs edits

(credit to seborn here)

6 years agoFold last entry into changelog
Nick Mathewson [Wed, 22 May 2019 16:00:20 +0000 (12:00 -0400)] 
Fold last entry into changelog

6 years agoBump to 0.4.1.1-alpha
Nick Mathewson [Wed, 22 May 2019 15:56:02 +0000 (11:56 -0400)] 
Bump to 0.4.1.1-alpha

6 years agoMerge remote-tracking branch 'dgoulet/ticket30454_035_01'
Nick Mathewson [Wed, 22 May 2019 15:50:46 +0000 (11:50 -0400)] 
Merge remote-tracking branch 'dgoulet/ticket30454_035_01'

6 years agoMerge branch 'ticket30428_041_02_squashed'
Nick Mathewson [Wed, 22 May 2019 15:48:43 +0000 (11:48 -0400)] 
Merge branch 'ticket30428_041_02_squashed'

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 remote-tracking branch 'nickm/ticket30454_034_01_squashed' into ticket30454_035_01
David Goulet [Wed, 22 May 2019 15:43:55 +0000 (11:43 -0400)] 
Merge remote-tracking branch 'nickm/ticket30454_034_01_squashed' into ticket30454_035_01

6 years agoEdit changelog entries for clarity and conciseness
Nick Mathewson [Wed, 22 May 2019 15:06:37 +0000 (11:06 -0400)] 
Edit changelog entries for clarity and conciseness

6 years agolight movement and editing on changelog
Nick Mathewson [Tue, 21 May 2019 23:18:58 +0000 (19:18 -0400)] 
light movement and editing on changelog

6 years agoAdd a new "autostyle" make target to run all of our reformatting
Nick Mathewson [Mon, 20 May 2019 16:08:30 +0000 (12:08 -0400)] 
Add a new "autostyle" make target to run all of our reformatting

Closes ticket 30539.

6 years agoupdateCopyright: look at the current year.
Nick Mathewson [Mon, 20 May 2019 16:02:20 +0000 (12:02 -0400)] 
updateCopyright: look at the current year.

6 years agorectify_include_paths: warn instead of aborting on duplicate headers
Nick Mathewson [Mon, 20 May 2019 15:52:45 +0000 (11:52 -0400)] 
rectify_include_paths: warn instead of aborting on duplicate headers

We have two sendme.h files at the moment; we should fix that, but
not in this branch.

6 years agoIn microdesc_cache_reload(), set journal length to length of string we read
rl1987 [Fri, 17 May 2019 16:44:45 +0000 (19:44 +0300)] 
In microdesc_cache_reload(), set journal length to length of string we read

Hopefully this will fix CID 1444769.

6 years agohs: Remove hs_cell_onion_key_type_t enum
David Goulet [Wed, 15 May 2019 19:30:29 +0000 (15:30 -0400)] 
hs: Remove hs_cell_onion_key_type_t enum

Unify this with the trunnel ABI so we don't duplicate.

Part of #30454

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agotrunnel: Remove INTRODUCE1 status code IN statement
David Goulet [Wed, 15 May 2019 19:27:27 +0000 (15:27 -0400)] 
trunnel: Remove INTRODUCE1 status code IN statement

We want to support parsing a cell with unknown status code so we are forward
compatible.

Part of #30454

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agohs: Add changes file for #30454
David Goulet [Thu, 9 May 2019 17:23:14 +0000 (13:23 -0400)] 
hs: Add changes file for #30454

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agohs: Remove hs_intro_auth_key_type_t enum
David Goulet [Thu, 9 May 2019 17:09:44 +0000 (13:09 -0400)] 
hs: Remove hs_intro_auth_key_type_t enum

Like the previous commit about the INTRODUCE_ACK status code, change all auth
key type to use the one defined in the trunnel file.

Standardize the use of these auth type to a common ABI.

Part of #30454

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agohs: Get rid of duplicate hs_cell_introd_ack_status_t
David Goulet [Thu, 9 May 2019 17:01:15 +0000 (13:01 -0400)] 
hs: Get rid of duplicate hs_cell_introd_ack_status_t

This enum was the exact same as hs_intro_ack_status_t that was removed at the
previous commit. It was used client side when parsing the INTRODUCE_ACK cell.

Now, the entire code dealing with the INTRODUCE_ACK cell (both sending and
receiving) have been modified to all use the same ABI defined in the trunnel
introduce1 file.

Finally, the client will default to the normal behavior when receiving an
unknown NACK status code which is to note down that we've failed and re-extend
to the next intro point. This way, unknown status code won't trigger a
different behavior client side.

Part of #30454.

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agohs: Define INTRODUCE_ACK status code in trunnel
David Goulet [Thu, 9 May 2019 16:55:52 +0000 (12:55 -0400)] 
hs: Define INTRODUCE_ACK status code in trunnel

Remove the hs_intro_ack_status_t enum and move the value into trunnel. Only
use these values from now on in the intro point code.

Interestingly enough, the client side also re-define these values in hs_cell.h
with the hs_cell_introd_ack_status_t enum. Next commit will fix that and force
to use the trunnel ABI.

Part of #30454

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoDon't forget to use the mutex in testing_enable_prefilled_rng()
rl1987 [Mon, 6 May 2019 14:21:11 +0000 (17:21 +0300)] 
Don't forget to use the mutex in testing_enable_prefilled_rng()

6 years agoInitial changelog draft for 0.4.1.1-alpha (mostly automated)
Nick Mathewson [Fri, 17 May 2019 14:12:07 +0000 (10:12 -0400)] 
Initial changelog draft for 0.4.1.1-alpha (mostly automated)

6 years agoOOM-purge the DNS cache one part at a time
Nick Mathewson [Fri, 17 May 2019 14:03:41 +0000 (10:03 -0400)] 
OOM-purge the DNS cache one part at a time

Previously we purged it in 1-hour increments -- but one-hour is the
maximum TTL for the cache!  Now we do it in 25%-TTL increments.

Fixes bug 29617; bugfix on 0.3.5.1-alpha.

6 years agoMerge remote-tracking branch 'tor-github/pr/1033'
Nick Mathewson [Fri, 17 May 2019 12:18:20 +0000 (08:18 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1033'

6 years agoMerge branch 'maint-0.4.0'
Nick Mathewson [Fri, 17 May 2019 12:10:17 +0000 (08:10 -0400)] 
Merge branch 'maint-0.4.0'

6 years agoMerge branch 'maint-0.3.4' into maint-0.3.5
Nick Mathewson [Fri, 17 May 2019 12:10:16 +0000 (08:10 -0400)] 
Merge branch 'maint-0.3.4' into maint-0.3.5

6 years agoMerge branch 'maint-0.3.5' into maint-0.4.0
Nick Mathewson [Fri, 17 May 2019 12:10:16 +0000 (08:10 -0400)] 
Merge branch 'maint-0.3.5' into maint-0.4.0

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.4 maint-0.3.4
Nick Mathewson [Fri, 17 May 2019 12:10:15 +0000 (08:10 -0400)] 
Merge branch 'maint-0.2.9' into maint-0.3.4

6 years agoUpdate geoip and geoip6 to the May 13 2019 database.
Karsten Loesing [Fri, 17 May 2019 06:52:13 +0000 (08:52 +0200)] 
Update geoip and geoip6 to the May 13 2019 database.

6 years agoYes, these functions really do have to be this long.
Mike Perry [Thu, 16 May 2019 20:29:09 +0000 (20:29 +0000)] 
Yes, these functions really do have to be this long.

6 years agoChanges file.
Mike Perry [Thu, 16 May 2019 20:25:25 +0000 (20:25 +0000)] 
Changes file.

6 years agoRefactor rend machines, stage 2/2: Move histogram code.
Mike Perry [Thu, 16 May 2019 19:42:45 +0000 (19:42 +0000)] 
Refactor rend machines, stage 2/2: Move histogram code.

Comment clarifications now that the code is seperated. It's the same code, but
its doing this for different reasons on each side.