| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | tor-netdoc: Derive Default for PortPolicy | Clara Engler | 2026-04-02 | 1 | -1/+1 | |
| | | | | | | | 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. | |||||
| * | tor-netdoc: Ed25519IdentityLine parser | Clara Engler | 2026-04-02 | 1 | -1/+35 | |
| | | ||||||
| * | tor-netdoc: ItemArgumentParseable for Arc<T> | Clara Engler | 2026-04-02 | 1 | -0/+6 | |
| | | ||||||
| * | tor-netdoc: NormalItemArgument for RelayFamilyId | Clara Engler | 2026-04-02 | 1 | -1/+3 | |
| | | ||||||
| * | tor-netdoc: ItemValueParseable for PortPolicy | Clara Engler | 2026-04-02 | 1 | -0/+18 | |
| | | | | | | | | | | 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. | |||||
| * | tor-netdoc: Make X25519 PKs parseable with parse2 | Clara Engler | 2026-04-02 | 1 | -0/+16 | |
| | | ||||||
| * | tor-netdoc: parse2 for RelayFamily | Clara Engler | 2026-04-02 | 1 | -9/+39 | |
| | | | | | | | 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. | |||||
| * | tor-netdoc: Improve upon LongIdent | Clara Engler | 2026-04-02 | 1 | -1/+8 | |
| | | | | | | | This commit makes LongIdent parseable by implementing NormalItemArgument as well as the required Display for it. Besides, it also derives Hash on it. | |||||
| * | tor-netdoc: Improve upon B64 | Clara Engler | 2026-04-02 | 1 | -1/+42 | |
| | | | | | | | | | 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. | |||||
| * | tor-netdoc: Constructor: Fixes to generated docs | Ian Jackson | 2026-04-01 | 1 | -8/+8 | |
| | | | | | | | | | | | 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) | |||||
| * | tor-netdoc: Constructor: Reformat $/// doc section | Ian Jackson | 2026-04-01 | 1 | -10/+6 | |
| | | | | | | | This lines all the docs lines up, so we can see our indentation. No change to the generated docs. | |||||
| * | tor-netdoc: Constructor: Use $/// deftly feature | Ian Jackson | 2026-04-01 | 1 | -30/+27 | |
| | | | | | No change to the generated docs. | |||||
| * | tor-netdoc: parse2 derive: Use $/// deftly feature in a few places | Ian Jackson | 2026-04-01 | 1 | -4/+4 | |
| | | | | | No change to the generated docs. | |||||
| * | tor-netdoc: RsaSha1Signature::new_sign_netdoc: rename argument | Ian Jackson | 2026-04-01 | 1 | -3/+3 | |
| | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3851#note_3388076 | |||||
| * | tor-netdoc: Gate encode_sign on plain-consensus feature | Ian Jackson | 2026-04-01 | 1 | -1/+4 | |
| | | ||||||
| * | tor-netdoc: encode: Move various ItemArgument impls to impls.rs | Ian Jackson | 2026-04-01 | 2 | -64/+68 | |
| | | ||||||
| * | tor-netdoc: Abolish poc::authcert | Ian Jackson | 2026-04-01 | 5 | -10/+8 | |
| | | | | | | | 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.) | |||||
| * | tor-netdoc: Replace AuthCert::verify_selfcert impl | Ian Jackson | 2026-04-01 | 2 | -47/+13 | |
| | | | | | | Get rid of the version in poc. Instead, implement the same functionality in terms of AuthCert::verify, outside poc. | |||||
| * | tor-netdoc: authcert: Test encoding and signing method | Ian Jackson | 2026-04-01 | 1 | -0/+43 | |
| | | ||||||
| * | tor-netdoc: authcert: Provide encoding and signing method | Ian Jackson | 2026-04-01 | 1 | -1/+26 | |
| | | ||||||
| * | tor-netdoc: RsaSha1Signature: Provide signing method | Ian Jackson | 2026-04-01 | 1 | -0/+82 | |
| | | ||||||
| * | tor-netdoc: Provide `new` methods for CrossCert and AuthCert | Ian Jackson | 2026-04-01 | 1 | -0/+60 | |
| | | ||||||
| * | tor-netdoc: Turn AuthCertSignature into RsaSignature | Ian Jackson | 2026-04-01 | 3 | -26/+47 | |
| | | | | | | | | | 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. | |||||
| * | tor-netdoc: derive enncoding for AuthCert, AuthCertSignature[s] | Ian Jackson | 2026-04-01 | 1 | -2/+5 | |
| | | ||||||
| * | tor-netdoc: implement encoding function for raw_data_object | Ian Jackson | 2026-04-01 | 1 | -1/+10 | |
| | | ||||||
| * | tor-netdoc: Move raw_data_object to new container module | Ian Jackson | 2026-04-01 | 5 | -12/+20 | |
| | | | | | This will allow us to use it for encoding as well as parsing. | |||||
| * | tor-netdoc: impl encoding traits for authcert cross-cert types | Ian Jackson | 2026-04-01 | 1 | -1/+19 | |
| | | ||||||
| * | tor-netdoc: impl encoding traits for rsa::PublicKey | Ian Jackson | 2026-04-01 | 2 | -0/+28 | |
| | | ||||||
| * | tor-netdoc: Provide ItemEncoder::text_sofar() | Ian Jackson | 2026-04-01 | 1 | -0/+5 | |
| | | ||||||
| * | tor-netdoc: Provide ItemEncoder::object() taking an ItemObjectEncodable | Ian Jackson | 2026-04-01 | 2 | -0/+17 | |
| | | ||||||
| * | tor-netdoc: impl From<RsaIdentity> for the fingerprint types | Ian Jackson | 2026-04-01 | 1 | -4/+8 | |
| | | ||||||
| * | tor-netdoc: encode derive: Fix handling of optionality. | Ian Jackson | 2026-04-01 | 1 | -7/+3 | |
| | | | | | | We mustn't use selector.selector() because that's for multiplicity, not optionality. In pracctice, it goes wrong with Vec<u8>. | |||||
| * | tor-netdoc: encode derive: Use paste_spanned to improve an error message | Ian Jackson | 2026-04-01 | 1 | -1/+3 | |
| | | ||||||
| * | tor-netdoc: Fix a wrong "what does this end" comment | Ian Jackson | 2026-04-01 | 1 | -1/+1 | |
| | | | | | This was a c&p error, I think. | |||||
| * | tor-netdoc: authcert: Debug CrossCertObject in hex | Ian Jackson | 2026-04-01 | 1 | -1/+3 | |
| | | ||||||
| * | tor-netdoc: Constructor: Fix it so it actually works | Ian Jackson | 2026-04-01 | 2 | -5/+5 | |
| | | | | | | | The hidden __non_exhaustive field has to be pub. And, fix the use site, currently AuthCert. | |||||
| * | tor-netdoc: encode: re-export netdoc_ordering_check for macros | Ian Jackson | 2026-04-01 | 1 | -0/+1 | |
| | | | | | Otherwise deriving NetdocEncodable doesn't work outside this crate. | |||||
| * | tor-netdoc: encode derive: Use $P for Result | Ian Jackson | 2026-03-31 | 1 | -1/+1 | |
| | | ||||||
| * | tor-netdoc: Fix typo in doc comment | Ian Jackson | 2026-03-31 | 1 | -1/+1 | |
| | | ||||||
| * | tor-netdoc: Rename `AuthCertUnverified::verify_self_signed` | Ian Jackson | 2026-03-31 | 2 | -15/+17 | |
| | | | | | | | | | | | | 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. | |||||
| * | tor-netdoc: encoder: Rename .object() method to .object_bytes | Ian Jackson | 2026-03-31 | 5 | -12/+12 | |
| | | | | | | | | | | | | 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`. | |||||
| * | tor-netdoc: Port to web-time-compat | Nick Mathewson | 2026-03-26 | 3 | -5/+7 | |
| | | ||||||
| * | Revert "parse2: Rename lno_for_error to lno" | Clara Engler | 2026-03-25 | 2 | -3/+3 | |
| | | ||||||
| * | parse2: Rename lno_for_error to lno | Clara Engler | 2026-03-25 | 2 | -3/+3 | |
| | | | | | | 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. | |||||
| * | parse2: Implement `ParseError::new()` | Clara Engler | 2026-03-25 | 1 | -0/+19 | |
| | | | | | | | | | | 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. | |||||
| * | Fix typos | Tobias Stoeckmann | 2026-03-24 | 12 | -17/+17 | |
| | | | | | Typos found with codespell | |||||
| * | tor-netdoc: signature orderliness: add some xrefs | Ian Jackson | 2026-03-19 | 2 | -1/+6 | |
| | | ||||||
| * | tor-netdoc: signature ordering: discuss an alternative impl approach | Ian Jackson | 2026-03-19 | 1 | -0/+3 | |
| | | | | | Suggested-by: Clara Engler <[email protected]> | |||||
| * | tor-netdoc: signature orderliness: orderly signs don't cover other sigs | Ian Jackson | 2026-03-19 | 1 | -0/+1 | |
| | | | | | | This is implied by `body` being the body before the first signature item, but needs to be part of the definition. | |||||
| * | tor-netdoc: signature orderliness: shuffle wording slightly | Ian Jackson | 2026-03-19 | 1 | -1/+1 | |
| | | ||||||
