summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | tor-netdoc: Add a test for Microdesc with parse2Clara Engler2026-04-021-0/+94
| | | | | | |
| * | | | | | tor-netdoc: Derive NetdocParseable for MicrodescClara Engler2026-04-023-8/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | | | tor-netdoc: Derive Default for PortPolicyClara Engler2026-04-021-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 parserClara Engler2026-04-021-1/+35
| | | | | | |
| * | | | | | tor-netdoc: ItemArgumentParseable for Arc<T>Clara Engler2026-04-021-0/+6
| | | | | | |
| * | | | | | tor-netdoc: NormalItemArgument for RelayFamilyIdClara Engler2026-04-021-1/+3
| | | | | | |
| * | | | | | tor-netdoc: ItemValueParseable for PortPolicyClara Engler2026-04-021-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 parse2Clara Engler2026-04-021-0/+16
| | | | | | |
| * | | | | | tor-netdoc: parse2 for RelayFamilyClara Engler2026-04-021-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 LongIdentClara Engler2026-04-021-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 B64Clara Engler2026-04-021-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.
* | | | | | Merge branch 'update-rust' into 'main'Ian Jackson2026-04-022-4/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update CI images for Rust and Alpine See merge request tpo/core/arti!3839
| * | | | | | CI: Update Rust to 1.94.1Ian Jackson2026-04-022-3/+3
| | | | | | |
| * | | | | | CI: Give path to script to updateIan Jackson2026-04-021-1/+1
| | | | | | |
| * | | | | | CI: Also update Rust Alpine image in docker-reproducible-buildIan Jackson2026-04-021-1/+1
| | | | | | |
| * | | | | | CI: Update Alpine for Rust to 3.22Ian Jackson2026-03-311-1/+1
| | | | | | |
| * | | | | | CI: Update Rust to 1.94Ian Jackson2026-03-311-2/+2
| | | | | | |
* | | | | | | Merge branch 'deftly-1-11' into 'main'Clara Engler2026-04-0232-36/+36
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update to derive-deftly 0.11.0 to pick up `meta_quoted rigorous` See merge request tpo/core/arti!3855
| * | | | | | | Update to derive-deftly 0.11.0 to pick up `meta_quoted rigorous`Ian Jackson2026-04-0232-36/+36
| | | | | | | |
* | | | | | | | Merge branch 'xtrace' into 'main'Ian Jackson2026-04-022-14/+2
|\ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | trivial: maint: Use xtrace instead of echo in hooks See merge request tpo/core/arti!3847
| * | | | | | | maint: `set -o xtrace` to `set -x`Clara Engler2026-04-022-4/+2
| | | | | | | |
| * | | | | | | maint: Use xtrace instead of echo in hooksClara Engler2026-04-012-12/+2
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit replaces our own calls of echo by simply adding `set -o xtrace` to the top of the shell scripts, which achieves exactly the same but in a native way.
* | | | | | | Merge branch 'deftly-strings' into 'main'Clara Engler2026-04-022-38/+31
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use derive-deftly string templating in tor-netdoc See merge request tpo/core/arti!3854
| * | | | | | | tor-netdoc: Constructor: Fixes to generated docsIan Jackson2026-04-011-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 sectionIan Jackson2026-04-011-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 featureIan Jackson2026-04-011-30/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No change to the generated docs.
| * | | | | | | tor-netdoc: parse2 derive: Use $/// deftly feature in a few placesIan Jackson2026-04-011-4/+4
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | No change to the generated docs.
* | | | | | | Merge branch 'semver-doc' into 'main'Clara Engler2026-04-021-6/+11
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | doc/dev/semver_status.md: Change MODIFIED to ADDED See merge request tpo/core/arti!3852
| * | | | | | doc/dev/semver_status.md: Explicitly allow coalescing ADDED into BREAKINGIan Jackson2026-04-011-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3852#note_3388295
| * | | | | | doc/dev/semver_status.md: Adjust discussion a bitIan Jackson2026-04-011-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ADDED aren't used for the "breaking changes" part of the changelog, obviously.
| * | | | | | doc/dev/semver_status.md: Change MODIFIED to ADDEDIan Jackson2026-04-011-4/+4
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | $ git-log --pretty=oneline -G ADDED -- ':crates/*/semver.md' | wc -l 222 $ git-log --pretty=oneline -G MODIFIED -- ':crates/*/semver.md' | wc -l 57 $ No doubt this is because the normal meaning of "modified" could be a breaking change.
* | | | | | Merge branch 'ticket_2428' into 'main'Nick Mathewson2026-04-014-16/+19
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prefer runtime.now/wallclock to SystemTime/Instant::now, when available. Closes #2428 See merge request tpo/core/arti!3845
| * | | | | | proto: Take current time as an argument when constructing padder.Nick Mathewson2026-03-312-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | | | circmgr: Use runtime.now() in place of Instant/SystemTime::get().Nick Mathewson2026-03-312-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Part of #2428.
* | | | | | | Merge branch 'encode-authcert' into 'main'Ian Jackson2026-04-0117-179/+477
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: encoding and signing of authcerts See merge request tpo/core/arti!3851
| * | | | | | | tor-netdoc: RsaSha1Signature::new_sign_netdoc: rename argumentIan Jackson2026-04-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3851#note_3388076
| * | | | | | | tor-netdoc: Gate encode_sign on plain-consensus featureIan Jackson2026-04-011-1/+4
| | | | | | | |
| * | | | | | | tor-netdoc: Include rand dependency when encodeIan Jackson2026-04-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes build with nailing-cargo test -p tor-netdoc --no-default-features --features encode
| * | | | | | | tor-netdoc: encode: Move various ItemArgument impls to impls.rsIan Jackson2026-04-012-64/+68
| | | | | | | |
| * | | | | | | tor-netdoc: Abolish poc::authcertIan Jackson2026-04-015-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 implIan Jackson2026-04-012-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 methodIan Jackson2026-04-011-0/+43
| | | | | | | |
| * | | | | | | tor-netdoc: authcert: Provide encoding and signing methodIan Jackson2026-04-011-1/+26
| | | | | | | |
| * | | | | | | tor-netdoc: RsaSha1Signature: Provide signing methodIan Jackson2026-04-011-0/+82
| | | | | | | |
| * | | | | | | tor-netdoc: Provide `new` methods for CrossCert and AuthCertIan Jackson2026-04-011-0/+60
| | | | | | | |
| * | | | | | | tor-netdoc: Turn AuthCertSignature into RsaSignatureIan Jackson2026-04-013-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 Jackson2026-04-011-2/+5
| | | | | | | |
| * | | | | | | tor-netdoc: implement encoding function for raw_data_objectIan Jackson2026-04-011-1/+10
| | | | | | | |
| * | | | | | | tor-netdoc: Move raw_data_object to new container moduleIan Jackson2026-04-015-12/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow us to use it for encoding as well as parsing.
| * | | | | | | tor-netdoc: impl encoding traits for authcert cross-cert typesIan Jackson2026-04-011-1/+19
| | | | | | | |