Ian Jackson
d965dc3f70
clippy: Add standard test lint block to several examples
2022-06-24 14:23:38 +01:00
Ian Jackson
bebf013bef
maint/add_warning: Add two lints via add_warning as a test case
2022-06-24 14:23:38 +01:00
Ian Jackson
72515abf91
maint/add_warning: Add ability maintain test lint blocks
2022-06-24 14:23:38 +01:00
Ian Jackson
76ff330610
maint/add_warning: Scan all files by default, but insist only in some
...
This will allow us to have add_warning manage test lint blocks.
We have to stop printing all the filenames because there are too
many. Filenames still come out on error of course.
2022-06-24 14:23:34 +01:00
Ian Jackson
589c6e52bb
Run maint/add_warning crates/*/src/{lib,main}.rs
...
Update all lint blocks
2022-06-23 19:15:42 +01:00
Ian Jackson
13e27919c5
clippy: Supresss clippy::significant_drop_in_scrutinee
...
As per the linked discussion.
2022-06-23 19:14:54 +01:00
Ian Jackson
28dea73523
lints: Scheme for allowing us to name nightly lints
...
As per
https://gitlab.torproject.org/tpo/core/arti/-/issues/501
2022-06-23 19:14:11 +01:00
Ian Jackson
e59fa141b7
ci: Pass --cfg ci_arti_stable to stable clippy
...
We're going to use this to control lints etc.
2022-06-23 19:13:47 +01:00
Nick Mathewson
210f3f1587
Merge branch 'error_cleanup' into 'main'
...
Error cleanup, part 1
See merge request tpo/core/arti!601
2022-06-22 19:43:50 +00:00
Nick Mathewson
813a648ce2
fs-mistrust: convert Io error variant to a struct.
2022-06-22 15:21:34 -04:00
Nick Mathewson
0369995364
tor-cell: convert BytesErr to a struct variant
2022-06-22 15:21:12 -04:00
Nick Mathewson
c3da82fc2d
tor-cell: error usefulness and style fixes
2022-06-22 10:02:42 -04:00
Nick Mathewson
e3e922d03f
Improve error messages in tor-checkable.
2022-06-22 09:48:42 -04:00
Nick Mathewson
5577163387
tor-socksproto: Style and info fixes in errors.
...
(The use of Cow<> in the error message isn't strictly necessary
here, but it's a pattern I want to encourage.)
2022-06-22 09:16:44 -04:00
Nick Mathewson
3120f1092a
Style fixes to tor-bytes errors.
...
Also note an issue with the design of tor-bytes::Error that should
probably go in a separate MR.
2022-06-22 09:00:59 -04:00
Nick Mathewson
7163b7dcc0
Style fixes to tor-protover errors.
2022-06-22 08:50:44 -04:00
Nick Mathewson
f6d6ac7fe9
tor-llcrypto: style fixes on BlindingError
2022-06-22 08:47:18 -04:00
Nick Mathewson
9ba7750dfe
Style fixes to tor-units errors.
2022-06-22 08:42:13 -04:00
Nick Mathewson
bf2336e547
Style fixes to tor-events errors.
2022-06-22 08:39:44 -04:00
Nick Mathewson
c39631af27
tor-config: style fixes on CfgPathError.
2022-06-22 08:36:13 -04:00
Nick Mathewson
37cbd38abc
tor-config: Don't format source error as part of error message
...
This is one I missed earlier.
2022-06-22 08:23:33 -04:00
Nick Mathewson
48653df68f
Style fixes to retry-error error messages.
2022-06-22 08:11:44 -04:00
Nick Mathewson
9102948045
Style fixes to safelog errors.
2022-06-22 08:07:37 -04:00
Nick Mathewson
326ab1a7ae
Editorial improvements on fs-mistrust errors
...
These changes make sure that the errors conform to our preferred
style, and include a description of what exactly we were doing when
something went wrong.
2022-06-22 08:03:15 -04:00
eta
4e3537746f
Merge branch 'display_source_cleanup' into 'main'
...
Do not include error source() in display() format.
See merge request tpo/core/arti!598
2022-06-21 19:34:27 +00:00
Ian Jackson
9b4ba4893e
Merge branch 'stalled_directory' into 'main'
...
Detect and report stalled directory downloads
Closes #468
See merge request tpo/core/arti!587
2022-06-21 19:13:40 +00:00
Ian Jackson
0bd375cb34
Merge branch 'channel' into 'main'
...
Plumb channel padding timing parameters from netdir to tor-proto
See merge request tpo/core/arti!586
2022-06-21 18:37:27 +00:00
Ian Jackson
da2e53bf76
tor-chanmgr: Change to use unwrap_void
...
As per discussion in
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/586#note_2813573
2022-06-21 19:19:28 +01:00
Ian Jackson
a2614729a4
channel padding: Rename ChannelsParams from ChannelsConfig (rustfmt)
...
Consequential ordering changes.
2022-06-21 19:19:28 +01:00
Ian Jackson
7d676cde02
channel padding: Rename ChannelsParams from ChannelsConfig
...
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/586#note_2814276
Change names and comments and docs everywhere.
2022-06-21 19:19:28 +01:00
Ian Jackson
ff228e5d9c
channel padding: chanmgr: Clarify a comment
...
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/586#note_2813574
2022-06-21 19:19:28 +01:00
Ian Jackson
65e6683b0b
tor-proto: Have Channel::reconfigure throw ChannelClosed
...
Addresses
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/586#note_2813567
2022-06-21 19:19:28 +01:00
Ian Jackson
13ca24ba3a
tor-proto: err: Provide ChannelClosed as a separate unit error
2022-06-21 19:19:28 +01:00
Ian Jackson
19c52ff8e4
channel padding: Use IntegerMilliseconds in netdir
2022-06-21 19:19:28 +01:00
Ian Jackson
db71018021
tor-netdir: Make CHANNEL_PADDING_TIMEOUT_UPPER_BOUND pub
...
We need this because it is a type parameter for the types of nf_ito_*.
2022-06-21 19:19:28 +01:00
Ian Jackson
9779e5a2e2
channel padding: Use IntegerMilliseconds in padding::Parameters
2022-06-21 19:19:28 +01:00
Ian Jackson
b1b840c7c6
tor-units: IntegerTimeUnit: Provide try_map
...
This lets a caller map the inner value, eg to convert the type.
I don't provide `map` as well as `try_map` now, since I don't need it;
we could add it later if it is desirable (although try_map can always
be used instead).
I was hoping to provide a `TryFrom` instead, but that necesasrily
overlaps with the std conversion impl from IntegerMilliseconds<T> to
IntegerMilliseconds<U> where T == U.
2022-06-21 19:19:22 +01:00
Ian Jackson
0ea34e3280
tor-units: IntegerTimeUnit: Relax condition on T
...
It is semantically quite meaningful for these to contain something
that isn't `TryInto<u64>`. (Of course the `Duration` conversion won't
work without that.)
Indeed, this condition was only applied to two out of the three types.
Prompted by being near this code, but not actually necessary for
anything I'm doing here.
2022-06-21 19:19:22 +01:00
Ian Jackson
ec756c79e7
tor-units: IntegerTimeUnit: Provide as_time_unit deconstructor
...
We're going to need this to use this in the padding timer parameters.
2022-06-21 19:19:22 +01:00
Ian Jackson
db4e5aba97
channel padding parameters update: Drop a redundant clone
2022-06-21 19:19:22 +01:00
Ian Jackson
a5aaa56c3c
channel padding: Change timeout to match C Tor
...
Pending an official value from the spec.
2022-06-21 19:19:22 +01:00
Ian Jackson
2d97ab3677
Fix docs for `CtrlMsg::ConfigUpdate`
...
Prompted by
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/586#note_2813565
2022-06-21 19:19:22 +01:00
eta
54c7070b30
Fix typos
2022-06-21 19:19:22 +01:00
Ian Jackson
d2b783641d
channel padding: Test timeout updates
2022-06-21 19:19:22 +01:00
Ian Jackson
e0040701d0
tor-chanmgr tests: Add config_update tracking to FakeChannel
2022-06-21 19:19:22 +01:00
Ian Jackson
6e07401e6b
channel padding: Honour NetDir for timeouts
...
But padding is still not enabled by default.
2022-06-21 19:19:22 +01:00
Ian Jackson
e53555f418
channel padding: Add the parameters from the spec to NetDir
2022-06-21 19:19:22 +01:00
Ian Jackson
7f3f426738
channel padding: Plumb settings from chanmgr
2022-06-21 19:19:22 +01:00
Ian Jackson
b5218a0c0e
channel padding: Introduce ChannelsConfig and reconfigure facility
...
Nothing geenrates config updates yet.
2022-06-21 19:19:22 +01:00
Ian Jackson
33ef338fe2
chanmgr: inner (map): Reorganise to prepare for having more state
...
The main copy of the (global) configuration for the client's channels
is going to have to live here, inside this mutex. So this really
needs to become a struct with names fields.
2022-06-21 19:19:22 +01:00