| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
`clippy::collapsible_if` started triggering after bumping the MSRV to
1.88.
Since this triggers from a lot of places, and since there even are a
couple of instances where we explicitly allow `clippy::collapsible_ifs`,
I've opened #2342 for deciding what to do about it.
|
| |
|
|
| |
This adds the lint to all our crates.
|
| |
|
|
|
|
| |
This commit replaces the last remaining uses of `EP::Other` in
`tor-netdoc`, which got removed in arti!3561 but was still made use of
in arti!3592 without causing a merge conflict.
|
| |\
| |
| |
| |
| | |
Implement EncodedAuthCert and use it in poc for votes
See merge request tpo/core/arti!3592
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
The feature arrangements in tor-netdoc are getting to be in need of a
serious overhaul.
|
| | | |
|
| | |
| |
| |
| | |
This probably isn't going to happen, but let's keep the idea in-tree.
|
| | |
| |
| |
| |
| | |
Move the information which still seems relevant out of the plan
document.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
As per doc/dev/notes/authcert-in-consensus.md.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
The string so far is exposed already via whole_for_signatures.
It is unusual for a doc parser to need this, but embedded documents
can use this plus byte_position to get the original input text for
their part of the outer document.
|
| | | |
|
| | |
| |
| |
| | |
Roughly as per the proposal in `doc/dev/notes/authcert-in-consensus.md`.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We can use the real AuthCert now that it implements the parse2 traits.
The verification function is still used by poc's netstatus code and by
a test case.
We must change the field names in a few places, because the real
AuthCert's struct field names are the keywords, whereas the poc's are
the key names. (A shame that they're different!)
|
| | |
| |
| |
| |
| |
| |
| | |
Use accessors for the body.
(Eventually this function will replace, be replaced by, or merge with,
the existing signature code outside poc.)
|
| | | |
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
Implement authority certificate management
See merge request tpo/core/arti!3561
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit changes `ErrorProblem::Other` to
`ErrorProblem::OtherBadDocument` while adding two new variants:
* `ErrorProblem::Internal`
* `ErrorProblem::BadApiUsage`
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit adds an out-of-bounds memory check to
parse2::parse_netdoc_multiple_with_offsets while adding the guarantee
that interfacing applications do not need to validate the returned usize
values to be in-range.
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit marks the ConsensusFlavor struct exhaustive because handling
it in a non-exhaustive fashion would cause lots of redundant error
handling in tor-dirserver.
Besides, a change in the list of consensus flavors should indeed be
breaking for applications making use of this struct, as it is quite a
heavy change, from a netdoc point of view.
|
| |/
|
|
|
|
|
| |
This struct is still a bit odd, and there's a todo saying we may
change it again, but at least now it's now available.
While we're here, rename the variant Tor to CTor.
|
| |
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3571#note_3325449
|
| |
|
|
| |
With `#[non_exhaustive]`, you're not allowed to write even `Thing { ..base }`.
|
| |
|
|
|
| |
This lets us having document items that are "manually non exhaustive"
which is necessary for struct literal constructors.
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
Let's not ask users to refer to the Constructor derive macro docs.
|
| | |
|
| |
|
|
| |
The compiler doesn't notice this, but it's odd.
|
| | |
|
| |
|
|
| |
This doesn't actually work of course.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This is in the spec. I don't think it is a great idea to duplicate it
here.
|
| |
|
|
|
| |
These names came from tmp, and we renamed things as we went, but
didn't change the docs everywhere.
|
| |
|
|
| |
Fix the type names while we're here.
|
| |
|
|
| |
This module is now the "proper" tests for the parse2 impl on AuthCert.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
tmp's version of AuthCert is gone. Each of its fields is already in
AuthCert, including the docs links. I've decided not to transfer the
syntax snippets.
The remaining function in that module is now an inherent method on
AuthCert, not on tmp's version.
This needs reformatting since verify_self_signed is now at the wrong level!
|
| |
|
|
|
| |
It's not clear that we want to expose these impls, but our existing
tests (in test::tmp) want them.
|
| | |
|