| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit fixes a bug in the microdescriptor parser to properly parse
multiple family-ids.
Previously, we interpreted the spec to simply contain multiple
`family-ids` lines. This is wrong however. Instead, there may only be
a single such line with multiple values.
To fix this issues, we itnroduce a `RelayFamilyIds` type, similar to
`RelayFamily`, that stores multiple `RelayFamilyId` entires in a `Vec`.
Then, we just derive `ItemValueParseable` on it and win.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This makes it possible to parse2 micro descriptors, which will be very
useful later on.
For this, it makes a few changes. Most notably, it introduces a
(private) field called `onion_key`, which stores an optional RSA onion
key, as it serves as the introduction line for this netdoc document
type. Besides, it also changes the `ed25519_id` type to the
`Ed25519IdentityLine` wrapper type, although the signature of the
respective getter remains the same.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is a sane default, because rejecting all ports is the default for
relay configurations as well as the default of when this field is absent
in netdocs.
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit implements ItemValueParseable for PortPolicy. Unfortunately
we cannot use NormalItemArgument because it contains spaces, leading to
multiple arguments.
In a later commit, we may migrate this fully to parse2 because right
now, it just wraps around its FromStr implementation.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit replaces the inner value of RelayFamily to use a LongIdent
instead, which it already uses for parsing, in order to derive
ItemValueParseable on it, so we can use it within parse2 magic.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit makes LongIdent parseable by implementing NormalItemArgument
as well as the required Display for it. Besides, it also derives Hash
on it.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit improves upon B64 by implementing NormalItemArgument for it,
as well as implementing a wrapper type for it, called FixedB64, that
works just like B64 except that the resulted inner-value must be of a
certain compile-time-specified fixed length, which is useful for things
such as digests.
|
| |\ \ \ \ \ \
| |_|_|_|/ /
|/| | | | |
| | | | | |
| | | | | | |
Update to derive-deftly 0.11.0 to pick up `meta_quoted rigorous`
See merge request tpo/core/arti!3855
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Now some bugs have become visible.
* Properly ``-quote the name in the heading.
* Add a missing space before `{`
* Adjust the fields to level-4 indent.
* In `construct()`, ``-quote the name, and xref it in the body,
not the title (which rustdoc makes a link to the fn itself)
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This lines all the docs lines up, so we can see our indentation.
No change to the generated docs.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
No change to the generated docs.
|
| |/ / / / /
| | | | |
| | | | |
| | | | | |
No change to the generated docs.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Prefer runtime.now/wallclock to SystemTime/Instant::now, when available.
Closes #2428
See merge request tpo/core/arti!3845
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Previously we'd get the time by calling Instant::now, but that would
lead to a mismatch with the runtime if we were mocking.
Part of #2428.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
Part of #2428.
|
| |\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
tor-netdoc: encoding and signing of authcerts
See merge request tpo/core/arti!3851
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3851#note_3388076
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Fixes build with
nailing-cargo test -p tor-netdoc --no-default-features --features encode
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This was just some type aliases. Put them in the poc files that used
them. (These type aliases are undesirable but we aren't cleaning them
up because the whole of poc is destined for deletion.)
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Get rid of the version in poc. Instead, implement the same
functionality in terms of AuthCert::verify, outside poc.
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
These are in fact just a completely normal RSA signature like in the
spec!
Move the type to the types module, and rename it. Leave a
compatibility alias.
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This will allow us to use it for encoding as well as parsing.
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
We mustn't use selector.selector() because that's for multiplicity,
not optionality. In pracctice, it goes wrong with Vec<u8>.
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This was a c&p error, I think.
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The hidden __non_exhaustive field has to be pub.
And, fix the use site, currently AuthCert.
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Otherwise deriving NetdocEncodable doesn't work outside this crate.
|
| | | | | | | | |
|
| | | |_|_|/ /
| |/| | | | |
|
| |\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
proto: Make tor-relay-crypto an optional dependency
Closes #2450
See merge request tpo/core/arti!3848
|