Commit Graph
34153 Commits
Author SHA1 Message Date
Nick Mathewson 91f377deec HACKING/design: turn the remaining parts of crypto into a certs doc 2019-11-12 12:01:33 -05:00
Nick Mathewson 89396bc726 HACKING/design: remove 03-modules as superseded.
The src/feature directory documentation now covers this better.
2019-11-12 11:56:53 -05: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 3d6ec40e6a Merge branch 'maint-0.4.2'
"git merge --strategy ours", because:
* 32295 is a quick fix for 0.4.2 only
* 32404 has a better implementation for master
2019-11-12 10:07:46 +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 2b3dc3384c Merge branch 'ticket32385' 2019-11-11 10:38:10 -05:00
Nick Mathewson b1083584c7 Clarify that "missing-doc-warnings" makes doxygen warnings nonfatal 2019-11-11 10:38:04 -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
George Kadianakis 8344776224 Merge branch 'tor-github/pr/1504' 2019-11-11 14:47:33 +02:00
teor 8af8ed72b2 Merge branch 'maint-0.4.2' 2019-11-11 14:20:03 +10:00
teor 8b1f99c29d Merge branch 'maint-0.4.1' into maint-0.4.2 2019-11-11 14:19:55 +10:00
teor 7043be968a Merge branch 'maint-0.4.0' into maint-0.4.1 2019-11-11 14:19:47 +10:00
teor 29940511e3 Merge branch 'maint-0.3.5' into maint-0.4.0 2019-11-11 14:19:39 +10:00
teor 2abff832dd 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.
2019-11-11 13:19:15 +10: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 5914addcbc Teach doxygen about option-declaration code.
These settings allow doxygen to find and understand doxygen comments
in configuration definitions made using the macros in confdecl.h.
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
Nick Mathewson 19cac400d9 Macros for declaring configuration structs and variable-tables
In our old design, we had to declare configuration structures (like
or_options_t) and variable tables (like option_vars_) separately,
and we used some magic to enforce their consistency (see
conftesting.h).

With this design, we write a single definition for the configuration
object and its fields, and use C macros to expand it either into a
structure, or a variable table.  Since they are both made from the
same source, they can't become inconsistent.

The two designs can coexist happily, and we can migrate from one to
the other at our convenience.
2019-11-07 07:28:43 -05:00