| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
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.
|
| |
|
|
|
| |
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.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
This method verifies all the signatures, and checks that the signing
authority is in the provided list. Anyway, authcerts aren't really
self-signed: they're a signature by KS_auth_id_rsa on
KP_auth_sign_rsa.
Note that there is also a `verify_selfcert` method which does only
some of the checks, and has some code duplication. That will be
cleaned up later.
|
| |
|
|
|
|
|
|
|
|
|
| |
With the introduction of the derives for document encoding, we now
have a trait ItemObjectEncodable. We will want a method on
ItemEncoder that takes an ItemObjectEncodable, and that should be
called `object` since it's a better approach than working ad-hoc with
tor_bytes::Writeable. (For example, an ItemObjectEncodable knows its
own label.)
So, rename `object` to `object_bytes`.
|
| |
|
|
| |
There are no breaking changes.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/issues/2436#note_3384773
Made with
nailing-cargo -Eu set-version -p arti-client 0.41.0
nailing-cargo -Eu set-version -p arti-relay 0.41.0
nailing-cargo -Eu set-version -p arti-rpcserver 0.41.0
nailing-cargo -Eu set-version -p arti-ureq 0.41.0
nailing-cargo -Eu set-version -p arti-rpc-client-core 0.41.0
nailing-cargo -Eu set-version -p tor-basic-utils 0.41.0
nailing-cargo -Eu set-version -p tor-error 0.41.0
nailing-cargo -Eu set-version -p tor-general-addr 0.41.0
nailing-cargo -Eu set-version -p tor-geoip 0.41.0
nailing-cargo -Eu set-version -p tor-memquota-cost 0.41.0
nailing-cargo -Eu set-version -p tor-llcrypto 0.41.0
nailing-cargo -Eu set-version -p tor-cert-x509 0.41.0
nailing-cargo -Eu set-version -p tor-rtcompat 0.41.0
nailing-cargo -Eu set-version -p tor-rtmock 0.41.0
nailing-cargo -Eu set-version -p tor-async-utils 0.41.0
nailing-cargo -Eu set-version -p tor-config 0.41.0
nailing-cargo -Eu set-version -p tor-config-path 0.41.0
nailing-cargo -Eu set-version -p tor-rpc-connect 0.41.0
nailing-cargo -Eu set-version -p tor-log-ratelim 0.41.0
nailing-cargo -Eu set-version -p tor-rpcbase 0.41.0
nailing-cargo -Eu set-version -p tor-memquota 0.41.0
nailing-cargo -Eu set-version -p tor-units 0.41.0
nailing-cargo -Eu set-version -p tor-bytes 0.41.0
nailing-cargo -Eu set-version -p tor-protover 0.41.0
nailing-cargo -Eu set-version -p tor-checkable 0.41.0
nailing-cargo -Eu set-version -p tor-cert 0.41.0
nailing-cargo -Eu set-version -p tor-key-forge 0.41.0
nailing-cargo -Eu set-version -p tor-hscrypto 0.41.0
nailing-cargo -Eu set-version -p tor-socksproto 0.41.0
nailing-cargo -Eu set-version -p tor-linkspec 0.41.0
nailing-cargo -Eu set-version -p tor-cell 0.41.0
nailing-cargo -Eu set-version -p tor-persist 0.41.0
nailing-cargo -Eu set-version -p tor-keymgr 0.41.0
nailing-cargo -Eu set-version -p tor-relay-crypto 0.41.0
nailing-cargo -Eu set-version -p tor-proto 0.41.0
nailing-cargo -Eu set-version -p tor-netdoc 0.41.0
nailing-cargo -Eu set-version -p tor-consdiff 0.41.0
nailing-cargo -Eu set-version -p tor-netdir 0.41.0
nailing-cargo -Eu set-version -p tor-relay-selection 0.41.0
nailing-cargo -Eu set-version -p tor-chanmgr 0.41.0
nailing-cargo -Eu set-version -p tor-ptmgr 0.41.0
nailing-cargo -Eu set-version -p tor-dircommon 0.41.0
nailing-cargo -Eu set-version -p tor-guardmgr 0.41.0
nailing-cargo -Eu set-version -p tor-circmgr 0.41.0
nailing-cargo -Eu set-version -p tor-dirclient 0.41.0
nailing-cargo -Eu set-version -p tor-dirmgr 0.41.0
nailing-cargo -Eu set-version -p tor-dirserver 0.41.0
nailing-cargo -Eu set-version -p tor-hsclient 0.41.0
nailing-cargo -Eu set-version -p tor-hsservice 0.41.0
nailing-cargo -Eu set-version -p tor-hsrproxy 0.41.0
|
| |
|
|
| |
As generated by maint/fixup-features.
|
| | |
|
| | |
|
| |
|
|
|
| |
This commit lno_for_error in ItemStream to lno because its value may not
always be used for error handling, such as in tor-consdiff.
|
| |
|
|
|
|
|
|
|
| |
This commit adds the ParseError::new() method, which allows external
APIs to construct a ParseError, which is currently not possible due to
non-exhaustiveness, despite the member fields being public.
It is required for external applications using lower-level but public
parse2 APIs, such as ItemStream's.
|
| |
|
|
| |
Typos found with codespell
|
| | |
|
| |
|
|
| |
Suggested-by: Clara Engler <[email protected]>
|
| |
|
|
|
| |
This is implied by `body` being the body before the first signature
item, but needs to be part of the definition.
|