]> git.ipfire.org Git - thirdparty/tor.git/log
thirdparty/tor.git
5 years agoAdd a test for crypto_pk_asn1_decode_private maxbits.
Nick Mathewson [Sat, 14 Mar 2020 17:50:38 +0000 (13:50 -0400)] 
Add a test for crypto_pk_asn1_decode_private maxbits.

5 years agoRevise TROVE-2020-002 fix to work on older OpenSSL versions.
Nick Mathewson [Sat, 14 Mar 2020 17:38:53 +0000 (13:38 -0400)] 
Revise TROVE-2020-002 fix to work on older OpenSSL versions.

Although OpenSSL before 1.1.1 is no longer supported, it's possible
that somebody is still using it with 0.3.5, so we probably shouldn't
break it with this fix.

5 years agochanges file for 33119 aka TROVE-2020-002
Nick Mathewson [Wed, 5 Feb 2020 17:02:32 +0000 (12:02 -0500)] 
changes file for 33119 aka TROVE-2020-002

5 years agoWhen parsing tokens, reject early on spurious keys.
Nick Mathewson [Wed, 5 Feb 2020 16:57:31 +0000 (11:57 -0500)] 
When parsing tokens, reject early on spurious keys.

5 years agoWhen parsing, reject >1024-bit RSA private keys sooner.
Nick Mathewson [Wed, 5 Feb 2020 16:11:35 +0000 (11:11 -0500)] 
When parsing, reject >1024-bit RSA private keys sooner.

Private-key validation is fairly expensive for long keys in openssl,
so we need to avoid it sooner.

5 years agoMerge remote-tracking branch 'tor-github/pr/1614' into maint-0.3.5
teor [Wed, 29 Jan 2020 21:53:53 +0000 (07:53 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1614' into maint-0.3.5

5 years agoMerge remote-tracking branch 'tor-github/pr/1513' into maint-0.3.5
teor [Wed, 15 Jan 2020 23:57:27 +0000 (09:57 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1513' into maint-0.3.5

5 years agoCorrect how we use libseccomp
Peter Gerber [Mon, 10 Jun 2019 12:56:31 +0000 (14:56 +0200)] 
Correct how we use libseccomp

This fixes a startup crash with libseccomp v2.4.0 if Sandbox is
set to 1.

5 years agoMerge remote-tracking branch 'tor-github/pr/1459' into bug32240_32242_035
teor [Sun, 15 Dec 2019 23:21:05 +0000 (09:21 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1459' into bug32240_32242_035

5 years agoMerge branch 'bug32240_029' into bug32240_035
teor [Sun, 15 Dec 2019 23:09:16 +0000 (09:09 +1000)] 
Merge branch 'bug32240_029' into bug32240_035

Merge
* Chutney Trusty deletion in bug32240_029
* NSS addition in maint-0.3.5

5 years agochanges: file for 32240 maint-0.2.9
teor [Sun, 15 Dec 2019 23:06:25 +0000 (09:06 +1000)] 
changes: file for 32240

5 years agoTravis: Run Chutney jobs in Ubuntu Bionic images
teor [Sun, 15 Dec 2019 23:03:48 +0000 (09:03 +1000)] 
Travis: Run Chutney jobs in Ubuntu Bionic images

Closes 32240.

5 years agoTravis: Turn off Tor's Sandbox in Chutney jobs
teor [Sun, 15 Dec 2019 23:01:45 +0000 (09:01 +1000)] 
Travis: Turn off Tor's Sandbox in Chutney jobs

We need to set "Sandbox 0", until we fix sandbox errors that are
triggered by Ubuntu Xenial and Bionic. See 32722.

Part of 32240.

5 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Sun, 15 Dec 2019 22:15:55 +0000 (08:15 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

5 years agoMerge remote-tracking branch 'tor-github/pr/1576' into maint-0.3.5
teor [Sun, 15 Dec 2019 22:14:04 +0000 (08:14 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1576' into maint-0.3.5

5 years agoMerge remote-tracking branch 'tor-github/pr/1575' into maint-0.2.9
teor [Sun, 15 Dec 2019 22:13:38 +0000 (08:13 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1575' into maint-0.2.9

5 years agobump to 0.3.5.9-dev
Nick Mathewson [Mon, 9 Dec 2019 21:01:11 +0000 (16:01 -0500)] 
bump to 0.3.5.9-dev

5 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
Nick Mathewson [Fri, 6 Dec 2019 21:02:07 +0000 (16:02 -0500)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

5 years agoUpdate geoip and geoip6 to the December 3 2019 database.
Karsten Loesing [Fri, 6 Dec 2019 10:50:35 +0000 (11:50 +0100)] 
Update geoip and geoip6 to the December 3 2019 database.

6 years agochanges: file for 32629
teor [Fri, 6 Dec 2019 00:51:05 +0000 (10:51 +1000)] 
changes: file for 32629

6 years agochanges: file for 32629
teor [Fri, 6 Dec 2019 00:51:05 +0000 (10:51 +1000)] 
changes: file for 32629

6 years agoBump version to 0.3.5.9
Nick Mathewson [Thu, 5 Dec 2019 18:29:49 +0000 (13:29 -0500)] 
Bump version to 0.3.5.9

6 years agoMerge remote-tracking branch 'tor-github/pr/1277' into maint-0.3.5
teor [Thu, 5 Dec 2019 00:11:18 +0000 (10:11 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1277' into maint-0.3.5

6 years agoTravis: use -std=gnu99 with NSS, and clang with Chutney
teor [Thu, 28 Nov 2019 01:38:48 +0000 (11:38 +1000)] 
Travis: use -std=gnu99 with NSS, and clang with Chutney

NSS:
* test NSS-specific code with -std=gnu99
* use a recent gcc version from the latest Ubuntu image

Chutney:
* use clang, so we keep one clang Linux job
* keep clang on a fast job, so the overall build finishes quickly

Closes ticket 32500 for 0.3.5.

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Tue, 3 Dec 2019 02:45:41 +0000 (12:45 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

Merge C_DIALECT_OPTIONS from ticket32500_029 with
other configure options from maint-0.3.5.

6 years agoTravis: use -std=gnu99 in some jobs
teor [Fri, 15 Nov 2019 00:17:32 +0000 (10:17 +1000)] 
Travis: use -std=gnu99 in some jobs

Require C99 standards-conforming code in Travis CI, but allow GNU gcc
extensions. Also activates clang's -Wtypedef-redefinition warnings.

Builds some jobs with -std=gnu99, and some jobs without.

Closes ticket 32500.

6 years agoTravis: Disable the macOS Rust job
teor [Sun, 1 Dec 2019 10:25:00 +0000 (20:25 +1000)] 
Travis: Disable the macOS Rust job

This time, we're disabling it because it's the lowest priority job.
(And also slow.)

Part of 32629.

6 years agoMerge branch 'ticket32629_029' into ticket32629_035
teor [Thu, 28 Nov 2019 02:21:08 +0000 (12:21 +1000)] 
Merge branch 'ticket32629_029' into ticket32629_035

Merge re-enable chutney from ticket32629_029 with
stem from maint-0.3.5.

6 years agoRevert "Travis: Disable the Rust macOS build"
teor [Thu, 28 Nov 2019 02:11:37 +0000 (12:11 +1000)] 
Revert "Travis: Disable the Rust macOS build"

This reverts commit 4c4a0d50ff4fd01862b78e8cbfaabfa9e4d4ae12.

6 years agoRevert "Travis: Disable all but one macOS build"
teor [Thu, 28 Nov 2019 02:10:10 +0000 (12:10 +1000)] 
Revert "Travis: Disable all but one macOS build"

This reverts commit 511aeba8eeb24a953228e00917f64703059a7673.

6 years agoMerge remote-tracking branch 'tor-github/pr/1464' into maint-0.3.5
teor [Mon, 25 Nov 2019 02:35:11 +0000 (12:35 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1464' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1422' into maint-0.3.5
teor [Mon, 25 Nov 2019 02:34:29 +0000 (12:34 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1422' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1405' into maint-0.3.5
teor [Mon, 25 Nov 2019 02:33:55 +0000 (12:33 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1405' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1395' into maint-0.3.5
teor [Mon, 25 Nov 2019 02:33:14 +0000 (12:33 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1395' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1394' into maint-0.3.5
teor [Mon, 25 Nov 2019 02:29:43 +0000 (12:29 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1394' into maint-0.3.5

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
Nick Mathewson [Mon, 11 Nov 2019 15:14:03 +0000 (10:14 -0500)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoAppveyor: Install OpenSSL to resolve a header/library mismatch
teor [Mon, 11 Nov 2019 02:56:08 +0000 (12:56 +1000)] 
Appveyor: Install OpenSSL to resolve a header/library mismatch

Install the mingw OpenSSL package in Appveyor. This makes sure that
the OpenSSL headers and libraries match in Tor's Appveyor builds.

(This bug was triggered by an Appveyor image update.)

Fixes bug 32449; bugfix on 0.3.5.6-rc.

6 years agoUpdate geoip and geoip6 to the November 6 2019 database.
Karsten Loesing [Sat, 9 Nov 2019 09:10:19 +0000 (10:10 +0100)] 
Update geoip and geoip6 to the November 6 2019 database.

6 years agoDo not try to shut down the event loop when it is not initialized.
Nick Mathewson [Wed, 6 Nov 2019 16:33:23 +0000 (11:33 -0500)] 
Do not try to shut down the event loop when it is not initialized.

Doing so caused us to crash in some unusual circumstances, such as
using --verify-config to verify a configuration that failed during
the options_act() stage.

Fixes bug 32407; bugfix on 0.3.3.1-alpha.

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Wed, 6 Nov 2019 01:19:30 +0000 (11:19 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1354' into maint-0.3.5
teor [Wed, 6 Nov 2019 01:18:09 +0000 (11:18 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1354' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1348' into maint-0.3.5
teor [Wed, 6 Nov 2019 01:17:43 +0000 (11:17 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1348' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1340' into maint-0.3.5
teor [Wed, 6 Nov 2019 01:17:01 +0000 (11:17 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1340' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1343' into maint-0.3.5
teor [Wed, 6 Nov 2019 01:16:09 +0000 (11:16 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1343' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1342' into maint-0.2.9
teor [Wed, 6 Nov 2019 01:15:45 +0000 (11:15 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1342' into maint-0.2.9

6 years agoMerge remote-tracking branch 'tor-github/pr/1330' into maint-0.2.9
teor [Wed, 6 Nov 2019 01:14:53 +0000 (11:14 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1330' into maint-0.2.9

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Mon, 28 Oct 2019 22:26:32 +0000 (08:26 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1460' into maint-0.2.9
teor [Mon, 28 Oct 2019 22:23:35 +0000 (08:23 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1460' into maint-0.2.9

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Fri, 25 Oct 2019 00:55:51 +0000 (10:55 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agochanges: file for 31919's bionic Travis image change
teor [Thu, 24 Oct 2019 23:53:11 +0000 (09:53 +1000)] 
changes: file for 31919's bionic Travis image change

6 years agoMerge branch 'ticket31919_bionic_029' into ticket31919_bionic_035
teor [Thu, 24 Oct 2019 23:48:14 +0000 (09:48 +1000)] 
Merge branch 'ticket31919_bionic_029' into ticket31919_bionic_035

6 years agoTravis: Use Ubuntu Bionic, but keep Trusty for chutney
teor [Wed, 23 Oct 2019 12:31:05 +0000 (22:31 +1000)] 
Travis: Use Ubuntu Bionic, but keep Trusty for chutney

Bionic has a recent coccinelle version, which passes our CI tests.

But Bionic (and Xenial) cause permissions errors for chutney.
We'll fix those in 32240.

Part of 31919.

6 years agohs-v3: Remove a BUG() caused by an acceptable race
David Goulet [Wed, 23 Oct 2019 14:20:09 +0000 (10:20 -0400)] 
hs-v3: Remove a BUG() caused by an acceptable race

hs_client_purge_state() and hs_cache_clean_as_client() can remove a descriptor
from the client cache with a NEWNYM or simply when the descriptor expires.

Which means that for an INTRO circuit being established during that time, once
it opens, we lookup the descriptor to get the IP object but hey surprised, no
more descriptor.

The approach here is minimalist that is accept the race and close the circuit
since we can not continue. Before that, the circuit would stay opened and the
client wait the SockTimeout.

Fixers #28970.

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoTravis: Use macOS 10.14 with Xcode 11.2
teor [Wed, 23 Oct 2019 12:41:17 +0000 (22:41 +1000)] 
Travis: Use macOS 10.14 with Xcode 11.2

Closes ticket 32241.

6 years agoTravis: Use zstd in our Travis Linux builds
teor [Wed, 23 Oct 2019 12:35:24 +0000 (22:35 +1000)] 
Travis: Use zstd in our Travis Linux builds

Recent Ubuntu versions have zstd >= 1.1, which is an optional tor build
dependency.

Closes ticket 32242.

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Tue, 22 Oct 2019 22:47:01 +0000 (08:47 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1360' into maint-0.3.5
teor [Tue, 22 Oct 2019 22:32:52 +0000 (08:32 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1360' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1351' into maint-0.2.9
teor [Tue, 22 Oct 2019 22:32:22 +0000 (08:32 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1351' into maint-0.2.9

6 years agoMerge remote-tracking branch 'tor-github/pr/1284' into maint-0.3.5
teor [Tue, 22 Oct 2019 22:30:48 +0000 (08:30 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1284' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1256' into maint-0.3.5
teor [Tue, 22 Oct 2019 22:28:03 +0000 (08:28 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1256' into maint-0.3.5

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Tue, 22 Oct 2019 22:24:30 +0000 (08:24 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

`git merge --strategy ours` to take the 0.3.5 changes for 31001,
and ignore the conflicting 0.2.9 changes.

6 years agoMerge remote-tracking branch 'tor-github/pr/1178' into maint-0.2.9
teor [Tue, 22 Oct 2019 22:20:45 +0000 (08:20 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1178' into maint-0.2.9

6 years agoMerge remote-tracking branch 'tor-github/pr/1376' into maint-0.3.5
Nick Mathewson [Tue, 22 Oct 2019 16:10:08 +0000 (12:10 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1376' into maint-0.3.5

6 years agoMerge remote-tracking branch 'origin/maint-0.3.5' into maint-0.3.5
teor [Tue, 22 Oct 2019 10:47:44 +0000 (20:47 +1000)] 
Merge remote-tracking branch 'origin/maint-0.3.5' into maint-0.3.5

6 years agoTravis: Disable the Rust macOS build
teor [Tue, 22 Oct 2019 09:38:50 +0000 (19:38 +1000)] 
Travis: Disable the Rust macOS build

This build was added in 0.3.5.

We need to mitigate slow scheduling of Travis macOS jobs.

Closes ticket 32177.

6 years agoMerge branch 'ticket32177_029' into ticket32177_035
teor [Tue, 22 Oct 2019 09:37:32 +0000 (19:37 +1000)] 
Merge branch 'ticket32177_029' into ticket32177_035

Stem from maint-0.3.5, disabled macOS chutney from ticket32177_029.

6 years agoTravis: Disable all but one macOS build
teor [Tue, 22 Oct 2019 09:34:47 +0000 (19:34 +1000)] 
Travis: Disable all but one macOS build

We need to mitigate slow scheduling of Travis macOS jobs.

Closes ticket 32177.

6 years agoAppveyor: Use Windows Server 2019
teor [Sun, 20 Oct 2019 09:39:48 +0000 (19:39 +1000)] 
Appveyor: Use Windows Server 2019

Instead of Windows Server 2016.

Closes ticket 32086.

6 years agotest/rebind: Make control formatting and log parsing more robust
teor [Mon, 5 Aug 2019 15:33:14 +0000 (01:33 +1000)] 
test/rebind: Make control formatting and log parsing more robust

* actually sleep when tor has not logged anything
* log at debug level when waiting for tor to log something
* backslash-replace bad UTF-8 characters in logs
* format control messages as ASCII: tor does not accept UTF-8 control commands

Fixes bug 31837; bugfix on 0.3.5.1-alpha.

6 years agomainloop: Disable periodic events before a destroy
David Goulet [Tue, 15 Oct 2019 17:33:48 +0000 (13:33 -0400)] 
mainloop: Disable periodic events before a destroy

When tearing down all periodic events during shutdown, disable them first so
their enable flag is updated.

This allows the tor_api.h to relaunch tor properly after a clean shutdown.

Fixes #32058

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
teor [Thu, 17 Oct 2019 04:51:50 +0000 (14:51 +1000)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5
teor [Thu, 17 Oct 2019 04:50:28 +0000 (14:50 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9
teor [Thu, 17 Oct 2019 04:49:52 +0000 (14:49 +1000)] 
Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

6 years agoStop libevent from reading data from closed connections.
George Kadianakis [Mon, 30 Sep 2019 15:29:00 +0000 (18:29 +0300)] 
Stop libevent from reading data from closed connections.

Code adapted from Rob's proposed patch in #30344.

Also add a comment in connection_mark_for_close_internal_() on why we should
not be adding extra code there without a very good reason.

6 years agohs-v3: Make service pick the exact amount of intro points
David Goulet [Thu, 29 Aug 2019 14:46:24 +0000 (10:46 -0400)] 
hs-v3: Make service pick the exact amount of intro points

When encoding introduction points, we were not checking if that intro points
had an established circuit.

When botting up, the service will pick, by default, 3 + 2 intro points and the
first 3 that establish, we use them and upload the descriptor.

However, the intro point is removed from the service descriptor list only when
the circuit has opened and we see that we have already enough intro points, it
is then removed.

But it is possible that the service establishes 3 intro points successfully
before the other(s) have even opened yet.

This lead to the service encoding extra intro points in the descriptor even
though the circuit is not opened or might never establish (#31561).

Fixes #31548

Signed-off-by: David Goulet <dgoulet@torproject.org>
6 years agotls: Log TLS read buffer length bugs once
teor [Fri, 4 Oct 2019 02:33:34 +0000 (12:33 +1000)] 
tls: Log TLS read buffer length bugs once

Rather than filling the logs with similar warnings.

Fixes bug 31939; bugfix on 0.3.0.4-rc.

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
Nick Mathewson [Wed, 2 Oct 2019 12:01:33 +0000 (08:01 -0400)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoUpdate geoip and geoip6 to the October 1 2019 database.
Karsten Loesing [Wed, 2 Oct 2019 09:11:27 +0000 (11:11 +0200)] 
Update geoip and geoip6 to the October 1 2019 database.

6 years agoTravis: Keep the macOS Rust job, but don't wait for it to finish
teor [Tue, 1 Oct 2019 07:32:46 +0000 (17:32 +1000)] 
Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.

6 years agoTravis: Split jobs, add essential jobs, remove redundant jobs
teor [Tue, 1 Oct 2019 07:28:26 +0000 (17:28 +1000)] 
Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.

6 years agoMerge branch 'bug31859_029' into bug31859_035
teor [Tue, 1 Oct 2019 07:20:16 +0000 (17:20 +1000)] 
Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

6 years agoTravis: Add a macOS chutney job, but don't wait for it to finish
teor [Thu, 26 Sep 2019 07:44:41 +0000 (17:44 +1000)] 
Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.

6 years agoTravis: Remove a redundant clang Linux job
teor [Thu, 26 Sep 2019 07:39:46 +0000 (17:39 +1000)] 
Travis: Remove a redundant clang Linux job

Part of 31859.

6 years agoAppveyor: Avoid spurious errors in Appveyor CI builds
teor [Mon, 30 Sep 2019 05:14:21 +0000 (15:14 +1000)] 
Appveyor: Avoid spurious errors in Appveyor CI builds

When Appveyor fails before the install step, some of the finish step's
functions were not defined.

Fixes bug 31884; bugfix on 0.3.4.2-alpha.

6 years agoTravis: Unroll the build matrix into matrix: include:
teor [Thu, 26 Sep 2019 07:25:17 +0000 (17:25 +1000)] 
Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.

6 years agoMerge branch 'ticket31372_029' into ticket31372_035
Nick Mathewson [Tue, 24 Sep 2019 12:01:43 +0000 (08:01 -0400)] 
Merge branch 'ticket31372_029' into ticket31372_035

6 years agochanges: use correct bugfix release, and reword changes file for 31408
teor [Mon, 23 Sep 2019 01:11:50 +0000 (11:11 +1000)] 
changes: use correct bugfix release, and reword changes file for 31408

6 years agoTry using make -k in the Appveyor configuration
Nick Mathewson [Mon, 23 Sep 2019 19:04:54 +0000 (15:04 -0400)] 
Try using make -k in the Appveyor configuration

Frequently, when a patch fails, it has failures in several files.
Using the "-k" flag will let us learn all the compilation errors,
not just the first one that the compiler hits.

Based on a patch by rl1987.

Closes ticket 31372.

6 years agoTry using make -k in Travis configuration
Nick Mathewson [Mon, 23 Sep 2019 19:04:54 +0000 (15:04 -0400)] 
Try using make -k in Travis configuration

Frequently, when a patch fails, it has failures in several files.
Using the "-k" flag will let us learn all the compilation errors,
not just the first one that the compiler hits.

Based on a patch by rl1987.

6 years agoFix bug when %including folder with comment only files. #31408
Daniel Pinto [Sun, 22 Sep 2019 21:30:48 +0000 (22:30 +0100)] 
Fix bug when %including folder with comment only files. #31408

When processing a %included folder, a bug caused the pointer to
the last element of the options list to be set to NULL when
processing a file with only comments or whitepace. This could
cause options from other files on the same folder to be
discarded depending on the lines after the affected %include.

6 years agoMerge branch 'bug31466_029' into bug31466_035_tmp
Nick Mathewson [Wed, 18 Sep 2019 19:42:40 +0000 (15:42 -0400)] 
Merge branch 'bug31466_029' into bug31466_035_tmp

6 years agoAdd a rate-limit to our warning about the disabled .exit notation
Nick Mathewson [Wed, 18 Sep 2019 19:38:33 +0000 (15:38 -0400)] 
Add a rate-limit to our warning about the disabled .exit notation

This warning would previously be given every time we tried to open a
connection to a foo.exit address, which could potentially be used to
flood the logs.  Now, we don't allow this warning to appear more
than once every 15 minutes.

Fixes bug 31466; bugfix on 0.2.2.1-alpha, when .exit was first
deprecated.

6 years agoAvoid a crash if our "current" and "old" ntor onion keys are equal
Nick Mathewson [Wed, 18 Sep 2019 15:14:45 +0000 (11:14 -0400)] 
Avoid a crash if our "current" and "old" ntor onion keys are equal

Our dimap code asserts if you try to add the same key twice; this
can't happen if everything is running smoothly, but it's possible if
you try to start a relay where secret_onion_key_ntor is the same as
secret_onion_key_ntor.old.

Fixes bug 30916; bugfix on 0.2.4.8-alpha when ntor keys were
introduced.

6 years agoExtract expressions in construct_ntor_key_map()
Nick Mathewson [Wed, 18 Sep 2019 15:11:05 +0000 (11:11 -0400)] 
Extract expressions in construct_ntor_key_map()

No behavioral change here: this is just refactoring.

6 years agoMerge remote-tracking branch 'tor-github/pr/1300' into maint-0.3.5
Nick Mathewson [Wed, 18 Sep 2019 01:28:29 +0000 (21:28 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1300' into maint-0.3.5

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
Nick Mathewson [Wed, 18 Sep 2019 01:26:31 +0000 (21:26 -0400)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

6 years agoMerge remote-tracking branch 'tor-github/pr/1216' into maint-0.2.9
Nick Mathewson [Wed, 18 Sep 2019 01:26:17 +0000 (21:26 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1216' into maint-0.2.9

6 years agoMerge remote-tracking branch 'tor-github/pr/1307' into maint-0.3.5
Nick Mathewson [Tue, 17 Sep 2019 22:58:06 +0000 (18:58 -0400)] 
Merge remote-tracking branch 'tor-github/pr/1307' into maint-0.3.5

6 years agoMerge branch 'maint-0.2.9' into maint-0.3.5
Nick Mathewson [Tue, 17 Sep 2019 22:57:49 +0000 (18:57 -0400)] 
Merge branch 'maint-0.2.9' into maint-0.3.5

"ours" merge to avoid picking up 0.2.9 version of ticket 31673.

6 years agoTreat an unexpected constant-sized VERSIONS cell as a PROTOCOL_WARN.
Nick Mathewson [Tue, 17 Sep 2019 13:09:36 +0000 (09:09 -0400)] 
Treat an unexpected constant-sized VERSIONS cell as a PROTOCOL_WARN.

We previously used tor_fragile_assert() to declare that this case
could not happen: VERSIONS cells are always supposed to be
variable-sized, right?

This is incorrect, though.  On a v1 link protocol connection, all
cells are fixed-sized.  There aren't supposed to be any VERSIONS
cells with this version of the protocol, but apparently, somebody
was messing up.  (The v1 link protocol is obsolete, so probably the
implementer responsible didn't mean to be using it.)

Fixes bug 31107.  Bugfix on 0.2.4.4-alpha, when we introduced a
tor_fragile_assert() for this case.