| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
We should use the same name everywhere, even if the name in the spec
is clumsy (as it is here).
|
| |
|
|
|
|
| |
We're going to want to apply the parse2 derive to Preamble, but this
field is anomalous. Rather than trying to make it regular, simply
move it to the old-parser-specific Consensus struct.
|
| |
|
|
|
|
|
| |
Consensus is not going to be easy to square with parse2 - especially,
signature handling is very different between the two parsers.
Instead, we'll have a new NetworkStatus type.
|
| |
|
|
|
| |
There is no such thing as the "header" according to the spec. We mean
the preamble.
|
| |\
| |
| |
| |
| | |
impl ItemValueParseable for SharedRandStatus
See merge request tpo/core/arti!3380
|
| | | |
|
| |/
|
|
| |
These fields aren't public so this doesn't have semver impacts.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Add links to torspec, and other cross-references.
Change heading fof `IgnoredPublicationTimeSp` to `publication` to
match spec and distinguish it from the `published` item in netstatus
docs.
Align several descriptions with the wording from torspec.
Remove a restatement of a fact from the spec, on the `valid_until`
field in `Lifetime`.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
In md consensuses the referenced document digest is in the `m` field.
This seems to be to make it similar to votes. But really the function
of the md desc hash in md rs entries is much more parallel to the
plain desc hash in plain rs entries. The way the spec has done it
means the `r` item has a needlessly different syntax.
|
| | |
|
| |
|
|
|
|
|
|
|
| |
This makes the Rust structure closer to the document structure.
Arguably, this makes the Rust structure worse. But: I'm really very
keen on avoiding handwritten parsing and printing code. And, in the
longer term, having this linkage will hopefully apply pressure to
avoid further protocol complexity/variation/chaos.
|
| |\
| |
| |
| |
| | |
Unify and tidy addrs methods from tor-linkspec and routerdescs
See merge request tpo/core/arti!3300
|
| | |
| |
| |
| | |
There is no longer a trait.
|
| | |
| |
| |
| |
| |
| |
| | |
We had two functions with different return types but identical
semantics. Replace them with one function returning `impl Iterator`.
Make it return owned addresses. These are small.
|
| | |
| |
| |
| |
| |
| |
| | |
This will allow type-driven parsing.
Don't change the type in the (now-mostly-obsolete) builder and
accessors; that would seem like pointless churn.
|
| |/
|
|
|
|
|
|
| |
The three other formats (!) used for representing RSA key fingerprints
in netdocs were all provided with helper types, but this one was
omitted.
I'm going to want it.
|
| |
|
|
| |
Fixes #2192
|
| | |
|
| |
|
|
|
| |
We don't need this since RouterStatus no longer implements any sealed
traits.
|
| | |
|
| |
|
|
|
| |
each_variety includes votes, so is "network status documents";
each_flavor is just consensuses.
|
| | |
|
| |
|
|
| |
And export *RouterStatus with the macro, and *Header.
|
| |
|
|
| |
This will allow them to be shared between each_flavor and each_variety.
|
| |
|
|
|
|
| |
Now we can start actually having code to do with votes.
This feature doesn't actually contain any new API surface yet.
|
| |
|
|
|
|
|
| |
The amount we're going to be able to reuse for votes is less than we
might hope.
This commit is just code motion.
|
| | |
|
| |
|
|
| |
It's not just types that can vary by variety.
|
| |
|
|
| |
We rename the files from per_ to each_.
|
| |
|
|
| |
It's going to need to vary when we do votes.
|
| |
|
|
|
|
|
| |
The methods in ParseRouterStatus can now be inherent.
This starts a cascade of unused stuff, and stuff which doesn't need to
be pub any more.
|
| |
|
|
|
| |
This is now more obviously not needed. We should eventually remove
this, or remove finish.
|
| |
|
|
| |
Now we only need one type.
|
| |
|
|
|
| |
Our approach to sharing code between md and plain consensuses is now
the new "variety" system, not generics.
|
| | |
|
| |
|
|
|
| |
This doesn't appear in a tor-netdoc rustdoc build from arti 1.4.6.
Shortly, clippy is about to start complaining that it's unreachable pub.
|
| |
|
|
|
|
| |
More code motion.
We're going to get rid of this type completely eventually.
|
| |
|
|
|
|
|
|
|
| |
This is much code motion.
This splits many types into two. For example, `Conensus` is
now`plain::Consensus<RS>` and `md::Consensus<RS>`.
We're going to get rid of the generics later in this branch.
|
| |
|
|
|
|
|
|
|
| |
Header and RouterStatus are going to move to a sibling module,
`each_variety.rs`, and the build code has moved too. These modules
will all need access to the various stuff.
let's just use `pub(crate)` rather than messing about with
`pub(super)` etc. It's generally just netdoc field.s
|
| |
|
|
| |
This is empty modules and scaffolding.
|
| |
|
|
|
| |
We're going to use ns_variety_definition_macros to support votes,
rather than this.
|
| |
|
|
|
|
| |
ns-consensus doesn't seem to have ever been released.
This is part of abolishing the use of "ns" to mean "plain".
|
| |
|
|
| |
This is part of abolishing the use of "ns" to mean "plain".
|