Nick Mathewson
7f785b66c2
Upgrade float_eq dev-dependency to 1.0.0
2022-06-07 08:03:55 -04:00
Nick Mathewson
df06e7b9bc
Upgrade tls-api to latest versions in arti-hyper.
2022-06-07 08:01:39 -04:00
Dimitris Apostolou
8488192ba1
Fix typos
2022-06-05 18:47:51 +03:00
Nick Mathewson
018fda4f73
Merge branch 'testing-rng' into 'main'
...
New facility for deterministic and reproducible test PRNGs.
See merge request tpo/core/arti!561
2022-06-02 21:11:36 +00:00
Nick Mathewson
69d352a7c7
New facility for deterministic and reproducible test PRNGs.
...
The new `testing_rng()` function is meant as a replacement for
thread_rng() for use in unit tests. By default, it uses a randomly
seeded RNG, but prints the seed before the test so that you can
reproduce any failures that occur. You can override this via the
environment to use a previous seed, or by using a deterministic
seed for all your tests.
Backend for #486 .
2022-06-02 14:51:51 -04:00
Ian Jackson
c2d8dac1ce
Merge branch 'better-fs-mistrust-badpermissions-string' into 'main'
...
fs-mistrust: Improve BadPermission string
See merge request tpo/core/arti!554
2022-06-02 11:15:52 +00:00
Ian Jackson
9f4fe6a484
tor-config: Fix a doc link
...
Nightly cargo doc complaints about this.
2022-06-01 15:48:45 +01:00
Ian Jackson
98ccd7e7e2
Merge branch 'lint' into 'main'
...
lints: Make lint blocks consistent and ensure they stay that way
Closes #469
See merge request tpo/core/arti!557
2022-05-31 18:27:53 +00:00
Alex Xu (Hello71)
bc6b02045e
fs-mistrust: Improve BadPermission string
...
To me, "Incorrect permissions on file or directory /path: g=w o=w"
implies that the current permissions on /path are 022.
Change the message to "Incorrect permissions: /path is
u=rwx,g=rwx,o=rwx; need g-w,o-w", which is closer to chmod syntax and is
more useful in non-interactive environments such as CI and support.
2022-05-31 14:23:01 -04:00
Alex Xu (Hello71)
201107906c
fs-mistrust: BadPermission(_, _) -> BadPermission(..)
...
Next commit adds another parameter to Error::BadPermission.
2022-05-31 14:15:03 -04:00
Nick Mathewson
a53b3d67d8
Merge branch 'data-stream-err' into 'main'
...
proto: Only ready a DataStream if CONNECTED was succesfully received
See merge request tpo/core/arti!556
2022-05-31 17:05:39 +00:00
Ian Jackson
9aec60871c
Merge branch 'config-test' into 'main'
...
arti config: Check that example config is exhaustive
See merge request tpo/core/arti!546
2022-05-31 16:33:27 +00:00
Ian Jackson
558ae0673d
Merge branch 'self_digests_error_if_0' into 'main'
...
tor-dirclient: Require that self.digests is nonempty
See merge request tpo/core/arti!553
2022-05-31 16:21:28 +00:00
David Goulet
710709313b
proto: Only ready a DataStream if CONNECTED was succesfully received
...
Signed-off-by: David Goulet <dgoulet@torproject.org>
2022-05-31 12:20:18 -04:00
Ian Jackson
89c4f76b6c
tor-config: Suppress unwrap lint in tests
...
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/546#note_2808892
2022-05-31 16:58:14 +01:00
Nick Mathewson
d707f6215e
Merge branch 'config-desc' into 'main'
...
arti-config: Change description of tombstone crate
See merge request tpo/core/arti!558
2022-05-31 15:25:44 +00:00
Ian Jackson
5b684020ed
tor-config: resolve_option tests: disable rsutfmt
2022-05-31 16:06:32 +01:00
Ian Jackson
c2fa37c56a
tor-config: Add comprehensive tests for resolve_option
2022-05-31 16:06:32 +01:00
Ian Jackson
32e4baa4c4
arti: Demote itertools back to dev-dependency
2022-05-31 15:45:07 +01:00
Ian Jackson
c938eeb386
arti-config: Change description of tombstone crate
...
I was looking to see if we could delete this altogether but I
discovered that on lib.rs the description does not say it's a removed
crate, in the summaries.
Fix this.
2022-05-31 15:26:41 +01:00
Ian Jackson
fec706c2f3
lints: Make lint blocks consistent
...
The remaining consequences of running add_warning
2022-05-31 15:24:11 +01:00
Ian Jackson
91b341de34
lints: arti-testing: Move some allows outside the auto block
2022-05-31 15:24:01 +01:00
Ian Jackson
de92a295fb
lints: tor-protover: Move two allows outside the auto block
...
These need to survive.
2022-05-31 15:24:01 +01:00
Ian Jackson
4f42101554
lints: Add let_unit_value allow to all crates
...
From running add_warning, with manual picking of the right
hunks/lines.
2022-05-31 15:23:52 +01:00
Nick Mathewson
f67c0eaf50
Merge branch 'tor-config-tests' into 'main'
...
Add a few coverage-based tests to tor-config.
See merge request tpo/core/arti!540
2022-05-31 14:08:51 +00:00
Ian Jackson
4634c1712b
lints: arti: Move some allows outside the auto block
...
These need to survive.
2022-05-31 14:39:17 +01:00
Nick Mathewson
ca94ec72ef
Add a few coverage-based tests to tor-config.
...
There's nothing major here, but it does fill in a few gaps.
2022-05-31 08:59:30 -04:00
Nick Mathewson
9fed0b39fa
Merge branch 'dbg' into 'main'
...
Revert "Remove dbg!()s in tor-config"
See merge request tpo/core/arti!552
2022-05-31 12:38:59 +00:00
Ian Jackson
ba0843da4a
lints: Add lint block delimiters to every crate
...
This was the result of:
maint/add_warning crates/*/src/{lib,main}.rs
and then manually curating the results.
2022-05-31 13:00:31 +01:00
Ian Jackson
1351945d87
lints: arti-config: Re-add standard lint list
...
We are going to make lints the same for every crate.
2022-05-31 13:00:31 +01:00
Ian Jackson
eb49bc7f46
lints: Suppress unknown lints in a way that works on nightly too
...
This is ridiculous.
2022-05-31 13:00:21 +01:00
Neel Chauhan
04579c0328
tor-dirclient: Require that self.digests is nonempty
2022-05-30 11:46:54 -07:00
Ian Jackson
fe9fb6b6ee
arti config: Check that example config is exhaustive
...
This is the final piece of #457 .
2022-05-30 16:03:01 +01:00
Ian Jackson
0a324f843f
mistrust: Canonicalise prefix from Some("") to None
...
This allows us to add the proper default example to the arti example
config file.
2022-05-30 16:00:45 +01:00
Ian Jackson
ca60859dff
arti: config: Canonicalise ports, and provide example dns_port
...
Now the validated configuration will never be `Some(0)`, even if that
is what was written in the config file. The arti CLI parser can still
produce this, so we don't touch the code that actually uses this.
(Without the canonicalisation the default builder produces `None` for
the `dns_port`, but the example would produce `Some(0)`, which is
semantically identical but fails the test.)
See https://gitlab.torproject.org/tpo/core/arti/-/issues/488 for some
background.
2022-05-30 16:00:45 +01:00
Ian Jackson
fbfaecdf72
config: Provide tor_config::resolve_option and resolve journald
...
Canonicalise the `logging.journald` setting in the validated
configuration. Now it will never be `Some("")`, even if that is what
was written in the config file.
This allows us to write `journald = ""` in the example configuration.
(Without the canonicalisation the default builder produces `None` and
the example would produce `Some("")`, which are semantically identical
but fail the test.)
See https://gitlab.torproject.org/tpo/core/arti/-/issues/488 for some
background.
2022-05-30 16:00:45 +01:00
Ian Jackson
fb54b5b032
arti: config example: Add entries for tor_network fields
...
These weren't previously discussed. It's not practical or useful to
show the actual default values here.
2022-05-30 16:00:45 +01:00
Ian Jackson
116b6c30e0
arti: config example: Add some missing defaults
...
Found by my forthcoming test.
2022-05-30 16:00:45 +01:00
Ian Jackson
d365d73889
arti: example config: Arrange to uncomment logfiles
...
This makes the config default parser see just "[ ]", an empty list,
which is indeed the default.
2022-05-30 16:00:45 +01:00
Ian Jackson
b88c1c1093
tor-config: Drop Serialize and Deserialize from a test type
...
These violate our rule that *built* structs ought not to be desr.
But this is just in a test.
2022-05-30 16:00:45 +01:00
Ian Jackson
c8d5681ff1
arti: Make ProxyConfig no longer Deserialize
...
That this remained was an oversight.
2022-05-30 16:00:45 +01:00
Ian Jackson
e0d9d24348
arti: cfg: Actually uncomment *all* the things in the example
2022-05-30 16:00:45 +01:00
Ian Jackson
017906cdc7
tor-dirmgr: Fix DirSkewTolerance
...
This was upposed to be one day, I presume!
Also complete a truncated sentence in the docs.
2022-05-30 16:00:45 +01:00
Ian Jackson
5824992471
Merge branch 'post-release-fix-20220527' into 'main'
...
Fix minor issues found while publishing crates for Arti 0.4.0
See merge request tpo/core/arti!547
2022-05-30 14:57:49 +00:00
Ian Jackson
ea80f124ff
Merge branch 'bug487' into 'main'
...
fs-mistrust: add getegid() to getgrouplist() output.
Closes #487
See merge request tpo/core/arti!548
2022-05-30 14:56:49 +00:00
Ian Jackson
064521dcf2
Merge branch 'arti-cfg-tests' into 'main'
...
add unit tests for ArtiConfig public functions
See merge request tpo/core/arti!551
2022-05-30 14:23:11 +00:00
Ian Jackson
aa5e647bd2
Merge branch 'chore/integrate_cargo_sort' into 'main'
...
Lexically sort Cargo.toml dependencies
Closes #490
See merge request tpo/core/arti!549
2022-05-30 14:19:19 +00:00
Ian Jackson
5327059775
Merge branch 'mistrust_osstring_limitation' into 'main'
...
fs-mistrust: Document problems with non-UTF8 OsString in toml
See merge request tpo/core/arti!538
2022-05-30 09:54:10 +00:00
trinity-1686a
266b278c74
deduplicate dns requests based on transaction id
2022-05-30 09:52:11 +00:00
michael mccune
db6842f666
add unit tests for ArtiConfig public functions
...
this change adds some simple tests for the ArtiConfig public getter
functions to help expand coverage in this crate.
2022-05-28 20:41:31 -04:00