Nick Mathewson
5f00c03ed0
Merge branch 'maint-0.4.0' into maint-0.4.1
2019-09-17 21:28:38 -04:00
Nick Mathewson
9e674d0eb4
Merge branch 'maint-0.3.5' into maint-0.4.0
2019-09-17 21:28:37 -04:00
Nick Mathewson
68a0106bf3
Run "make autostyle" and fix wide lines.
2019-09-16 13:27:42 -04:00
Nick Mathewson
8ad419744f
On windows, allow failures in test_parseconf.sh
...
There seems to be some unreliability issue with this test on
appveyor.
Addresses ticket 31757; This isn't a final fix for this issue, but
it should make CI pass.
2019-09-16 11:01:03 -04:00
Nick Mathewson
a1694b7363
Fix a shellcheck warning in test_parseconf.sh.
...
I wonder why this didn't show up before.
2019-09-16 09:22:43 -04:00
George Kadianakis
cd72850e08
Merge branch 'tor-github/pr/1316'
2019-09-16 15:22:18 +03:00
George Kadianakis
5ec751b38b
Merge branch 'tor-github/pr/1324'
2019-09-16 15:21:28 +03:00
Nick Mathewson
11cf4d9c3a
test_parseconf.sh: On --dump-config failure, --verify-config
2019-09-14 19:00:41 -04:00
Nick Mathewson
7e9ee3a58d
Add a test with many non-default options.
2019-09-14 19:00:41 -04:00
Nick Mathewson
617679df42
Add a few error test cases
2019-09-14 19:00:41 -04:00
Nick Mathewson
80e858e3e6
Add an integration test for %include.
2019-09-14 19:00:41 -04:00
Nick Mathewson
28025698a1
test_parseconf: run each test from inside its directory.
...
We need this to test includes and relative paths.
2019-09-14 19:00:41 -04:00
Nick Mathewson
850a00dc07
Add test for +Option, /Option, and Option
...
Here we use these directives to replace, extend, or clear values in
torrc.defaults and in torrc.
2019-09-14 19:00:41 -04:00
Nick Mathewson
2f7be9620b
Move our first 3 example conf_examples to named directories
...
I'm not planning to use "example" as the name for all of them, but
these first three _are_ simple examples.
2019-09-14 19:00:41 -04:00
Nick Mathewson
7c7e8402b5
Add a test script to try parsing and encoding Tor configurations
...
This script takes a set of example torrcs and command-lines from
src/test/conf_examples. If a success is expected, it runs "tor
--dump-config" and compares the result with the one we expect. If a
failure is expected, it runs "tor --verify-config" and greps for the
error we expect.
2019-09-14 19:00:41 -04:00
Nick Mathewson
bfc5f09979
Detect overflow or underflow on double config values.
...
Any floating point value too positive or negative to distinguish
from +/-Inf, or too small to distinguish from +/-0, is an
over/underflow.
2019-09-13 18:26:16 -04:00
David Goulet
286b129b09
Merge branch 'tor-github/pr/1319'
2019-09-12 13:53:59 -04:00
George Kadianakis
3aaa4d416b
Merge branch 'tor-github/pr/1299'
2019-09-12 18:08:00 +03:00
Nick Mathewson
c3b1a25d46
Workaround for GCC "note" about "variable tracking size limit"
...
GCC complains that we are using too many variables here, probably
because of the sheer number of locals used for our tinytest macros.
Eventually we should fix that (see 30968), but this commit just
makes the "note" go away by splitting the test function into two.
2019-09-12 18:07:47 +03:00
Nick Mathewson
261ec900db
Remove variable declarations from macros in test_addr_parse()
...
Instead, put them in the function itself.
This is an attempt to fix the gcc warning about the "variable
tracking size limit exceeded".
2019-09-12 18:07:47 +03:00
Nick Mathewson
87944cecfc
Merge remote-tracking branch 'tor-github/pr/1300'
2019-09-12 08:50:09 -04:00
Nick Mathewson
ded6d9fcb4
Run test_operator_cleanup on our unit tests
...
Coccinelle doesn't understand it when we use "==" and "!=" and so on as
arguments to macros. To solve this, we prefer OP_EQ, OP_NE, and so
on.
This commit is automatically generated by running
./scripts/coccinelle/test_operator_cleanup over all of the source
code in src.
2019-09-11 18:47:19 -04:00
Nick Mathewson
a90d1918af
Update #includes to point to confparse.h in its new location.
...
This commit was automatically generated by running
scripts/maint/rectify_include_paths.py .
2019-09-11 10:17:20 -04:00
David Goulet
41261c3b5c
Merge branch 'tor-github/pr/1296'
2019-09-11 09:42:31 -04:00
Nick Mathewson
14f48cb083
Add test_cmdline.sh to distribution.
2019-09-11 09:42:19 -04:00
Nick Mathewson
7a8ea0d3c3
integration test for --list-torrc-options
...
(This option tests our existing behavior, not necessarily the most
sensible behavior.)
2019-09-11 09:42:19 -04:00
Nick Mathewson
5ffe6ec0e3
Test: Make sure NOLIST options are not listed.
2019-09-11 09:42:19 -04:00
Nick Mathewson
9d60495903
Use strtod, not atof, for parsing doubles in the configuration.
...
This lets us detect erroneous doubles, which previously we could not
do.
Fixes bug 31475; bugfix on commit 00a9e3732e
, a.k.a svn:r136.
2019-09-10 19:01:32 -04:00
Nick Mathewson
d8ef6b1548
Add a unit test for ed25519 identity parsing in microdescriptors
...
This test makes sure that we parse ed25519 identities to get the
correct data from them. It also tests:
* That a microdescriptor may not have two ed25519 identities.
* That a microdescriptor may not have an ed25519 identity that is
not a valid base64-encoded ed25519 key.
* That a microdescriptor may have an unrecognized identity type.
It will help test the refactoring of ticket31675.
2019-09-10 09:10:49 -04:00
Nick Mathewson
a642a4cbd7
Merge branch 'ticket30924_042_04_squashed' into ticket30924_042_04_squashed_merged
2019-09-09 11:10:53 -04:00
David Goulet
622c2c7884
hs-v3: Rename validation function in hs_intropoint.c
...
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-09-09 11:07:51 -04:00
David Goulet
385f6bcfcc
hs-v3: Move DoS parameter check against 0
...
Move it outside of the validation function since 0 is a valid value but
disables defenses.
Signed-off-by: David Goulet <dgoulet@torproject.org>
2019-09-09 11:07:36 -04:00
teor
670d402621
entrynodes: Make routine descriptor expiry notice logs less alarming
...
When tor is missing descriptors for some primary entry guards, make the
log message less alarming. It's normal for descriptors to expire, as long
as tor fetches new ones soon after.
Fixes bug 31657; bugfix on 0.3.3.1-alpha.
2019-09-06 16:43:14 +10:00
George Kadianakis
cdd7e88970
Merge branch 'tor-github/pr/1261'
2019-09-05 17:02:53 +03:00
Neel Chauhan
0127888b06
Add tests for IPv6 exit policies on microdescriptors
2019-09-05 17:02:45 +03:00
Nick Mathewson
c683896b7c
Update routerset reset test to use new mgr API.
2019-09-04 08:42:34 -04:00
Nick Mathewson
17a870a64b
Merge branch 'ticket31240v2_merged_2' into ticket31240v2_merged_2_merged
2019-09-04 08:41:42 -04:00
teor
a52a5e0099
Merge branch 'maint-0.3.5' into maint-0.4.0
2019-08-30 23:33:01 +10:00
teor
b66712d85b
Merge remote-tracking branch 'tor-github/pr/1117' into maint-0.3.5
2019-08-30 23:22:18 +10:00
Nick Mathewson
1ef084c5fc
test_confparse: verify that clearing a routerset sets it to NULL.
2019-08-28 12:28:17 -04:00
Nick Mathewson
b1d7ddfb02
Merge branch 'ticket31240v2' into ticket31240v2_merged_2
2019-08-28 09:46:59 -04:00
Nick Mathewson
a3e99c5f1e
Add a test for clear_fn support in handling non-managed fields
2019-08-28 09:42:17 -04:00
Nick Mathewson
c967b5c9ba
Add a test for dumping a compound configuration
2019-08-28 09:42:17 -04:00
Nick Mathewson
8db3859cc6
Simple tests for nested configuration formats
...
One test makes sure that the toplevel magic numbers are distinct.
One test makes sure that we can parse a configuration object
with two sub-objects.
2019-08-28 09:42:17 -04:00
Nick Mathewson
d9fe9f5ede
Confmgr tests: test deprecations and abbreviations.
2019-08-28 09:42:17 -04:00
Nick Mathewson
e4162cdb38
Start on test cases for the multi-object feature of confmgr.
...
This test case, at this point, only constructs the confmgr object.
More code to come.
2019-08-28 09:42:17 -04:00
Nick Mathewson
cb5f8ace79
Tests for config_find_option_name()
...
Fix a bug in config_find_option_name() where it did not consider
the abbreviations table.
2019-08-28 09:42:17 -04:00
Nick Mathewson
aa3f0c4788
Add tests for variable-listing functions.
...
This discovered a bug related to an extra & in
config_mgr_list_deprecated_vars(): fix that.
2019-08-28 09:42:17 -04:00
Nick Mathewson
38b770bbbb
Make a config_suite_t type to hold multiple config sub-objects
...
Right now, it doesn't do anything; this patch is meant to make sure
that we're doing memory management correctly.
2019-08-28 09:40:53 -04:00
Nick Mathewson
47654d3249
Refactor config free logic to use a single path.
...
The right way to free a config object is now to wrap config_free(),
always. Instead of creating an alternative free function, objects
should provide an alternative clear callback to free any fields that
the configuration manager doesn't manage.
This lets us simplify our code a little, and lets us extend the
confparse.c code to manage additional fields in config_free.
2019-08-28 09:40:53 -04:00