Commit Graph

25746 Commits

Author SHA1 Message Date
David Goulet ca8e6451f2 Merge branch 'maint-0.4.3' 2020-03-30 13:38:58 -04:00
George Kadianakis 42e56f5bac hs-v3: Relax severity of a log message when decoding descriptors.
Make it LOG_PROTOCOL_WARN and also add the expiration timestamp in there to
ease debugging in the future.
2020-03-30 13:38:29 -04:00
David Goulet 27e2989fe9 Merge branch 'tor-github/pr/1775' 2020-03-30 13:31:56 -04:00
Nick Mathewson 0dc25a4b66 Use a macro to make our hs_opts checking terser. 2020-03-30 13:31:44 -04:00
Nick Mathewson 84868109d2 Use SECTION_HEADER, not "HiddenServiceDir".
Add a nonfatal assertion about a branch that should be unreachable.
2020-03-30 13:31:44 -04:00
Nick Mathewson 8aacd78e14 Update expected log messages in tests to new format. 2020-03-30 13:31:44 -04:00
Nick Mathewson d421050f3a Derive hidden service configuration from hs_opts_t.
This simplifies our parsing code by about 150 lines, and makes the
functions more straightforward.
2020-03-30 13:31:44 -04:00
Nick Mathewson cfaf1bca98 Start using confmgt logic to parse HS configuration.
This patch doesn't actually use the results of the parsed object to
create the service configuration: subsequent patches will do
that. This patch just introduces the necessary configuration tables
and starts using them to validate the configuration.

As of this writing, this patch breaks tests.  I'll likely fix that
in a rebase later on: the current error messages for failures to
parse options are a regression, so I've opened #33640 for that.
2020-03-30 13:31:44 -04:00
Nick Mathewson 43b578e099 Use config_lines_partition() to parse hs config sections. 2020-03-30 13:31:44 -04:00
Roger Dingledine 3a0f200505 fix typo in struct addr_policy_t comment 2020-03-27 03:48:15 -04:00
Roger Dingledine 46f4f82ac9 correct tor_addr_family() function comment
kind of a losing game to remember to update that comment when
we add another possible family, but hey, maybe it will be a while
until we add one more.
2020-03-27 03:46:54 -04:00
Roger Dingledine f8ecf01cc1 spell consensus more right in comments 2020-03-27 02:56:59 -04:00
Roger Dingledine a4304c6031 fix typo in log message 2020-03-27 02:51:01 -04:00
Nick Mathewson e7290dc8c0 Merge remote-tracking branch 'tor-github/pr/1780/head' 2020-03-26 10:38:08 -04:00
David Goulet cf58b0b369 Merge branch 'maint-0.4.3' 2020-03-26 09:15:01 -04:00
David Goulet e472737297 Merge branch 'tor-github/pr/1794' into maint-0.4.3 2020-03-26 09:14:25 -04:00
Nick Mathewson 2eb78e2061 Merge branch 'bug33651' 2020-03-25 10:38:01 -04:00
George Kadianakis a4d60ff854 Merge branch 'maint-0.4.3' 2020-03-23 16:57:27 +02:00
George Kadianakis 29420ab396 Merge branch 'tor-github/pr/1788' into maint-0.4.3 2020-03-23 16:56:59 +02:00
Nick Mathewson a0efba9bd0 Merge remote-tracking branch 'tor-github/pr/1797/head' 2020-03-23 09:05:45 -04:00
teor 1d22411cea Add some comments about future relay IPv6 work
Comments about 33681.
2020-03-21 04:07:17 +10:00
teor e0eec3bf29 parseconf: Add ORPort and DirPort auto tests
These tests don't actually trigger bug 32588, but they do increase
the coverage of the auto port config code.

Tests for 32588.
2020-03-21 04:07:03 +10:00
teor 4b914dea02 Merge branch 'bug32588_043' into bug32588_master 2020-03-21 04:02:08 +10:00
teor 52f61ec83e Merge branch 'bug32588_042' into bug32588_043
Merge static function declaration deletions from bug32588_042 and
maint-0.4.3 in app/config/config.c.
2020-03-21 04:01:00 +10:00
teor 5e2f31f177 Merge branch 'bug32588_041' into bug32588_042 2020-03-21 03:52:32 +10:00
teor 2962c32b7a Merge branch 'bug32588_035' into bug32588_041
Merge tests from maint-0.4.1 with new tests from bug32588_035
in test_router.c.
2020-03-21 03:50:36 +10:00
Nick Mathewson 96ca14d989 Add a test for the localhost case. 2020-03-21 03:44:01 +10:00
Nick Mathewson 1251265a0f Extend test to handle router_get_advertised_ipv6_or_ap 2020-03-21 03:43:58 +10:00
Nick Mathewson 1ba79d4567 Add a test for router_get_advertised_or_port_by_af(). 2020-03-21 03:43:55 +10:00
Nick Mathewson 6ffe073db7 Add tests for get_first_advertised_{addr,port}_by_type_af() 2020-03-21 03:43:52 +10:00
teor bac8bc0ff1 router: Refactor IPv6 ORPort function logic
Return early when there is no suitable IPv6 ORPort.
Show the address and port on error, using a convenience function.

Code simplification and refactoring.

Cleanup after 32588.
2020-03-21 03:43:48 +10:00
teor 861337fd6d router: Stop advertising incorrect auto IPv6 ORPorts
When IPv6 ORPorts are set to "auto", tor relays and bridges would
advertise an incorrect port in their descriptor.

This may be a low-severity memory safety issue, because the published
port number may be derived from uninitialised or out-of-bounds memory
reads.

Fixes bug 32588; bugfix on 0.2.3.9-alpha.
2020-03-21 03:36:39 +10:00
teor f9fef2633f relay: Set some output arguments in stubs
Fixes part of bug 33674; not in any released version of tor.
2020-03-21 02:48:40 +10:00
Nick Mathewson 3e24bd5557 Merge branch 'maint-0.4.3' 2020-03-20 07:56:42 -04:00
teor d4a74021e5 relay/dirauth: Set some output arguments in stubs
And document how some functions set their output arguments.

Fixes bug 33674; bugfix on 0.4.3.1-alpha.
2020-03-20 07:56:26 -04:00
Nick Mathewson c478dc9b2f Set *have_low_ports_out from stub port_parse_ports_relay().
Previously we just ignored this option, which would leave it unset,
and cause an assertion failure later on when running with the User
option.

Fixes bug 33668; bugfix on 0.4.3.1-alpha.
2020-03-20 07:56:26 -04:00
teor 2f1f3b1702 Merge branch 'maint-0.4.3' 2020-03-20 15:40:39 +10:00
teor 250b8499b8 dirauth: Remove a duplicate macro definition
Obviously correct changes to already-reviewed code.
2020-03-20 15:39:55 +10:00
teor 4bb06cae26 Merge branch 'maint-0.4.3' 2020-03-20 11:25:04 +10:00
teor eb2d08a72c Merge branch 'maint-0.4.2' into maint-0.4.3 2020-03-20 11:24:57 +10:00
teor 3aa855dc68 Merge branch 'maint-0.4.1' into maint-0.4.2 2020-03-20 11:24:51 +10:00
Nick Mathewson 42ea03eb7f Merge branch 'ticket33643_skip_035' into ticket33643_skip_041 2020-03-19 18:38:18 -04:00
Nick Mathewson 6bafe97bc1 Add a TOR_SKIP_TESTCASES environment variable for suppressing tests.
For example, "TOR_SKIP_TESTCASES=crypto/.. ./src/test/test" will run
the tests and suppress all the "crypto/" tests.  You could get the
same effect by running "./src/test/test :crypto/..", but that can be
harder to arrange from CI.

Part of a fix/workaround for 33643.
2020-03-19 18:36:36 -04:00
Neel Chauhan 52b4b7e492 Fix erroneous spaces in circuitmux_ewma.c 2020-03-19 13:18:26 -07:00
George Kadianakis dccac40e69 Merge branch 'tor-github/pr/1778' 2020-03-19 17:16:00 +02:00
Nick Mathewson 9bcd7e5939 Actually log post-bootstrap directory dl totals.
Fixes bug 33651; bug not in any released Tor.
2020-03-19 08:08:58 -04:00
Nick Mathewson 4f596b3edf Merge remote-tracking branch 'tor-github/pr/1807/head' 2020-03-19 08:02:09 -04:00
George Kadianakis e8f0860557 Merge branch 'tor-github/pr/1792' 2020-03-19 13:43:49 +02:00
David Goulet 4dbbe47d86 hs-v3: Improve accessor semantic of client cached object
Add an inline helper function that indicates if the cached object contains a
decrypted descriptor or not.

The descriptor object is NULL if tor is unable to decrypt it (lacking client
authorization) and some actions need to be done only when we have a decrypted
object.

This improves code semantic.

Fixes #33458

Signed-off-by: David Goulet <dgoulet@torproject.org>
2020-03-19 13:43:39 +02:00
teor c862205ba5 coverity: Silence spurious unreachable warning
Closes bug 33641; not in any released version of tor.
2020-03-19 17:11:13 +10:00