Commit Graph

25065 Commits

Author SHA1 Message Date
teor
ced434c586 test/parseconf: Update conf_examples to use expected_log
Part of 32451.
2019-11-14 12:57:34 +10:00
teor
c7838c71fb test/parseconf: Add failure cases in conf_failures/
These failure cases can be used to test the failure behaviour
and failure logs of test_parseconf.sh.

See the README for details.

Part of 32451.
2019-11-14 11:57:50 +10:00
teor
51a6c0c8fd test/parseconf: Stop adding newlines to *_printf
Cleanup after 32451.
2019-11-14 11:57:50 +10:00
teor
2c4ada729e test/parseconf: Show tor command lines on failure
Part of 32451.
2019-11-14 11:57:50 +10:00
teor
a5628cf5b3 test/parseconf: Refactor and simplify, stage 2
Remove more duplicate code.
Eliminate some arguments.
Rewrite some comments.

Cleanup after 32451.
2019-11-14 10:55:21 +10:00
teor
39046019ec test/parseconf: Refactor and standardise, stage 1
Remove duplicate code, and standardise similar behaviour.
Add some additional error checking.

Cleanup after 32451.
2019-11-14 10:55:21 +10:00
teor
b4b3060f69 test/parseconf: Rename some functions, and reformat
Part of 32451.
2019-11-14 10:55:21 +10:00
teor
e6ca32fae3 test/parseconf: Use consistent formatting
Make spacing, quotes, and env vars consistent.

Cleanup after 32451 and 32468.
2019-11-14 10:55:21 +10:00
teor
4514bfe9c2 test/parseconf: Stop ignoring --dump-config failures
When we added the $FILTER for Windows newlines, we made
the pipeline always exit successfully, even if tor failed.

Fixes bug 32468; bugfix on 0.4.2.1-alpha.
2019-11-14 10:55:21 +10:00
teor
7ef44100c4 test/parseconf: Standardise output messages
Part of 32451.
2019-11-14 10:55:21 +10:00
teor
3df6432006 test/parseconf: Add an expected_log file
The "expected_log" file is a set of patterns that matches the
output of "tor --verify-config". Unlike "error", it expects a
successful exit status.

Part of 32451.
2019-11-14 10:55:21 +10:00
teor
4cf5d4cb3c test/parseconf: Rewrite the included files section
Part of 32451.
2019-11-14 10:55:21 +10:00
teor
735d5f5b7e test/parseconf: Split the file list into sections
There are lots of different files now, so having Config and Result
sections is helpful.

Part of 32451.
2019-11-14 10:55:21 +10:00
teor
233ccef6d8
Merge branch 'maint-0.4.2' 2019-11-12 10:10:01 +10:00
teor
9be51e8a8e
test/parseconf: Add tests for ignored options
These tests will also pass on 0.4.3, with the original implementation,
and with the new implementation in 32404.

Part of 32295 and 32404.
2019-11-12 10:09:40 +10:00
teor
2ee04fc309
config: Log the option name when skipping an obsolete option
This is a basic fix for 0.4.2 only. The fix for 0.4.3 and later
is in 32404.

Fixes bug 32295; bugfix on 0.4.2.1-alpha.
2019-11-12 10:07:12 +10:00
Nick Mathewson
3d1a7d7dd7 Light grammar edits 2019-11-11 12:26:09 -05:00
Nick Mathewson
7c3378fb8d Merge remote-tracking branch 'tor-github/pr/1338' 2019-11-11 12:20:14 -05:00
Nick Mathewson
01af3a55f4 Merge remote-tracking branch 'tor-github/pr/1524' 2019-11-11 11:57:31 -05:00
Nick Mathewson
4462766d32 Merge branch 'ticket32404' 2019-11-11 11:54:14 -05:00
Nick Mathewson
9d562bba40 clarify OBSOLETE vs IGNORE. 2019-11-11 11:54:02 -05:00
Nick Mathewson
ee33bf5ee0 Doxygen: close an unterminated <b>. 2019-11-11 10:23:41 -05:00
Nick Mathewson
ff930c3305 doxygen: use <tt> and # to avoid interpreting # as a link. 2019-11-11 10:23:13 -05:00
Nick Mathewson
a920597f62 Merge branch 'maint-0.4.1' into maint-0.4.2 2019-11-11 10:14:04 -05:00
Nick Mathewson
eb8ea92cf9 Merge branch 'maint-0.4.2' 2019-11-11 10:14:04 -05:00
Nick Mathewson
29eb7b07ef Merge branch 'maint-0.4.0' into maint-0.4.1 2019-11-11 10:14:04 -05:00
Nick Mathewson
329aa1c48e Merge branch 'maint-0.3.5' into maint-0.4.0 2019-11-11 10:14:03 -05:00
Nick Mathewson
7beaaed245 Merge branch 'maint-0.2.9' into maint-0.3.5 2019-11-11 10:14:03 -05:00
teor
2d651f4f6a test/parseconf: Add basic parsing tests
And document the "%include" behaviour.

Closes 32450.
2019-11-11 13:04:28 +10:00
Karsten Loesing
853b6ad095 Update geoip and geoip6 to the November 6 2019 database. 2019-11-09 10:10:19 +01:00
Nick Mathewson
a08969e460 Refactor "OBSOLETE" type
It no longer warns, and is now defined in terms of an "IGNORE" type.

(The "IGNORE" type is the same as "OBSOLETE", except that it is not
reported as obsolete. It should be useful for disabled modules.)

Closes ticket 32404.
2019-11-07 11:01:25 -05:00
Nick Mathewson
36af84ba50 New configuration flag to warn that a variable is obsolete.
Part of 32404.
2019-11-07 09:14:44 -05:00
Nick Mathewson
f6c9ca3a1d Merge branch 'config_subsys_v4' 2019-11-07 08:59:42 -05:00
Nick Mathewson
582cee723a Fix various doxygen comments in feature/hs. 2019-11-07 08:13:31 -05:00
Nick Mathewson
de7053b896 Adjustments to 32406 per review
When we are failing because of a lack of a _required_ engine, note
that the engine was "required".

When engines are disabled, any required engine should cause a
failure.
2019-11-07 07:42:58 -05:00
Nick Mathewson
c550990400 Add a test for 32406 (AccelName with "!").
This also lets us test a failing set_options().
2019-11-07 07:28:43 -05:00
Nick Mathewson
32a2f96f82 Add the ability to fail when a hardware accelerator is missing.
Closes ticket 32406.
2019-11-07 07:28:43 -05:00
Nick Mathewson
27a4438805 conf_examples test for crypto_accel 2019-11-07 07:28:43 -05:00
Nick Mathewson
280a9a4760 Move netstatus (mainloop) state fields into mainloop's state. 2019-11-07 07:28:43 -05:00
Nick Mathewson
3afbb29bee subsysmgr: use IDX_NONE is an exception value, not -1. 2019-11-07 07:28:43 -05:00
Nick Mathewson
0f0a9bdf33 Stop using "config_suite_offset=-1" to indicate "no config suite."
Instead, create a separate "has_config_suite" boolean, so that only
top-level formats with config_suites need to declare an offset at
all.
2019-11-07 07:28:43 -05:00
Nick Mathewson
0d8504e70b crypto config: do not change the user's value of HardwareAccel.
We still interpret "AccelName" as turning on the "HardwareAccel"
feature, but we no longer modify the user's options here.

Fixes bug 32382; bugfix on 0.2.2.1-alpha when we added openssl
engine support.
2019-11-07 07:28:43 -05:00
Nick Mathewson
8cd3e66d93 Use new configuration architecture for crypto options
This is a comparatively simple change.
2019-11-07 07:28:43 -05:00
Nick Mathewson
b06e9d8ad5 Add testing-only functions to get the subsystem config/state indices 2019-11-07 07:28:43 -05:00
Nick Mathewson
52c0ab4af3 Add subsys functions for receiving/flushing states and options.
These functions are in the subsystem, not in the config_format_t,
since they are about how the format is _used_, not about _what it
is_.
2019-11-07 07:28:43 -05:00
Nick Mathewson
7ac4f9d5ec Give subsystems optional config formats and state formats.
The formats, when provided, are now added to the global config_mgr_t
objects.
2019-11-07 07:28:43 -05:00
Nick Mathewson
a7cfddc8d1 Make a new structure for tracking subsystem status.
We used to have only one boolean per subsystem, but we're about to
have a little more information.
2019-11-07 07:28:43 -05:00
Nick Mathewson
8638989308 Expose get_obj() functions from confmgt.c.
The subsysmgr code wants to use them.
2019-11-07 07:28:43 -05:00
Nick Mathewson
1d108894e7 Define a low-level version of the confdecl table macros
This version uses the enum rather than the type definitions, to
avoid layering violations and linking problems.
2019-11-07 07:28:43 -05:00
Nick Mathewson
683d4c2bc8 Add FOO_type_defn globals so that confdecl.h can refer to them. 2019-11-07 07:28:43 -05:00