aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | tor-cert: Remove the "encode" cargo featureIan Jackson2026-04-297-10/+9
| | | | | | | | | | | | | | | | This was experimental. Everything gated by it has been stabilised.
| * | | tor-cert: Stabilise everything gated by feature = "encode" (fmt)Ian Jackson2026-04-291-2/+1
| | | |
| * | | tor-cert: Stabilise everything gated by feature = "encode"Ian Jackson2026-04-295-18/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is widely used in-tree already. I don't think it makes sense to feature-gate it. There are some (perhaps rather thin) tests for both the Ed25519Builder and EncodedRsaCrosscert. It is possible we might want to change the API further, but this is still a 0.x crate so that's not going to be a problem. We'll remove the actual cargo feature in the next commit.
| * | | tor-cert: Ed25519CertBuilder: do builder fn renameIan Jackson2026-04-297-14/+12
| | | | | | | | | | | | | | | | | | | | | | | | Change all call sites. This completes the rename.
| * | | tor-cert: Ed25519CertBuilder: do type rename everywhereIan Jackson2026-04-292-12/+8
| | | | | | | | | | | | | | | | Abolish the type alias and change call references.
| * | | tor-cert: Ed25519CertBuilder: rename from Ed25519CertConstructorIan Jackson2026-04-292-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a perfectly ordinary builder type. There isn't any reason why it ought to be called "constructor". And, nowadays, we have things in tor-netdoc called Constructor that take a different approach. Briefly, leave a temporary compat alias, to make diffs more comprehensible. Currently this experimental, so no semver implications.
* | | | Merge branch 'testdata2-dirserver-prep' into 'main'Ian Jackson2026-04-293-2/+4
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Preperation work for upcoming tor-dirserver test refactoring See merge request tpo/core/arti!3931
| * | | tor-dirserver: Add tor-checkable as dev-dependencyClara Engler2026-04-281-0/+1
| | | | | | | | | | | | | | | | | | | | This is required to do some signature validation on legacy types in an upcoming commit.
| * | | tor-dirserver: Fix for missing_extra_infos() for NULLClara Engler2026-04-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If extra-infos is set to NULL, which might be the case for micro descriptors or even router descriptors because the field is optional there, this SQL query fails because it cannot LEFT JOIN server.extra_unsigned_sha1 when this field is NULL. To fix this, we simply add an additional clause to the WHERE statement that filters such rows out.
| * | | tor-dirserver: Make fingerprint optional in router_descriptorClara Engler2026-04-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit changes the schema to make the fingerprint optional. Reason for this is, that microdescriptors are also stored in this table and microdescriptors only contain an OPTIONAL onion-key, meaning it may not always be possible to determine this value from a microdescriptor, thereby making it silly to require it here.
* | | | Merge branch 'relayids_serde_default' into 'main'Alexander Hansen Færøy2026-04-291-2/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | linkspec: Add serde(default) to fields in RelayIds. See merge request tpo/core/arti!3933
| * | | | linkspec: Add serde(default) to fields in RelayIds.Nick Mathewson2026-04-281-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this change, we will accept serialized RelayId representations that omit one or more keys. This will eventually allow us to omit absent keys when we serialize these. This is the first stage of #2477.
* | | | | Merge branch 'nd-features-main' into 'main'Clara Engler2026-04-2926-255/+116
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | tor-netdoc: Un-gate many features See merge request tpo/core/arti!3930
| * | | | tor-netdoc: Require "encode" feature from tor-certIan Jackson2026-04-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | This is needed because we don't have !3926 in main yet. It will produce a semantic conflict when that merges.
| * | | | tor-netdoc: Gate vote-related incomplete code with "incomplete" (fmt)Ian Jackson2026-04-281-4/+1
| | | | |
| * | | | tor-netdoc: Gate vote-related incomplete code with "incomplete" (tidy)Ian Jackson2026-04-281-4/+5
| | | | |
| * | | | tor-netdoc: Gate vote-related incomplete code with "incomplete"Ian Jackson2026-04-285-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change "ns-vote" gates to "incomplete": * `vote` modules, and in the variety macro. (And make a TODO more likely to be found.) Change "parse2" gates to "incomplete": * VoteAuthoritySection
| * | | | tor-netdoc: Un-gate test2 moduleIan Jackson2026-04-281-1/+1
| | | | | | | | | | | | | | | | | | | | Everything that this needs is un-gated now.
| * | | | tor-netdoc: Un-gate RouterStatusMdDigestsVote and SoftwareVersionIan Jackson2026-04-282-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | These are complete. Un-gate the RouterStatusMdDigestsVote implementation, and the export of both.
| * | | | tor-netdoc: Un-gate "plain-consensus" cargo featureIan Jackson2026-04-288-30/+13
| | | | | | | | | | | | | | | | | | | | As per #2492.
| * | | | tor-netdoc: Un-gate "routerdesc" cargo featureIan Jackson2026-04-285-23/+4
| | | | | | | | | | | | | | | | | | | | As per #2492.
| * | | | tor-netdoc: Un-gate top-level NetdocBuilderIan Jackson2026-04-281-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | This is only used for hsdescs right now. But it doesn't need to be gated behind encode.
| * | | | tor-netdoc: Un-gate parse2 and encode loose impls under doc/netstatus (tidy)Ian Jackson2026-04-284-21/+10
| | | | |
| * | | | tor-netdoc: Un-gate parse2 and encode loose impls under doc/netstatusIan Jackson2026-04-285-29/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This stabilises the parse2 and encode impls of consensus tyepe: * {plain, md}::{Preamble, RouterStatus, RouterStatusIntroItem} It also un-gates the parse2 and encode impls of some vote types. * VoteAuthorityEntry - this type has been completed. * RouterStatusMdDigestsVote - whole type still gated with ns-vote Re the remaining vote types (vote::*): although each_variety.rs doesn't have a cfg itself, there is a feature gate in the variety macrology.
| * | | | tor-netdoc: Un-gate parse2 and encode loose impls in doc/netstatus.rs (rewrap)Ian Jackson2026-04-281-14/+4
| | | | |
| * | | | tor-netdoc: Un-gate parse2 and encode loose impls in doc/netstatus.rsIan Jackson2026-04-281-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This stabilises the parse2 and encode impls of * Lifetime * ConsensusMethods * SharedRandStatus * ConsensusAuthorityEntry All of these are complete.
| * | | | tor-netdoc: Un-gate features impls in doc/netstatus/dir_source.rs (rewrap)Ian Jackson2026-04-281-4/+1
| | | | |
| * | | | tor-netdoc: Un-gate features impls in doc/netstatus/dir_source.rsIan Jackson2026-04-281-8/+4
| | | | | | | | | | | | | | | | | | | | There are no outstanding TODOs here.
| * | | | tor-netdoc: Un-gate parse2 and encode mods in doc/netstatus.rs (fmt)Ian Jackson2026-04-281-12/+12
| | | | |
| * | | | tor-netdoc: Un-gate parse2 and encode mods in doc/netstatus.rs (tidy)Ian Jackson2026-04-281-19/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tidy the imports, and remove some now-unneeded { }. We'll run rustfmt in a moment to sort and reindent.
| * | | | tor-netdoc: Un-gate parse2 and encode mods in doc/netstatus.rsIan Jackson2026-04-281-16/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This stabilises the parse2 and encode impls of * NetParams<i32> * ProtoStatuses It also stabilises the parse2 impls of the following types which do not currently have any encode impls: * RelayWeight * rs::SoftwareVersion * IgnoredPublicationTimeSp As for TODOs and incomplete code: the things we're stabilising here are very simple, or fully formed. Implementing encoding for IgnoredPublicationTimeSp looks impossible, but we can cross that bridge when we come to it. We un-cfg-gate the parse2 and encode imports too.
| * | | | tor-netdoc: Upgrade a TODO re NetworkStatusUnverifiedVoteIan Jackson2026-04-281-1/+1
| | | | |
| * | | | tor-netdoc: Un-gate features in doc/microdesc.rs (fmt)Ian Jackson2026-04-281-3/+1
| | | | |
| * | | | tor-netdoc: Un-gate features in doc/microdesc.rsIan Jackson2026-04-281-16/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are all parse2, and there are no blocking TODOs. We're leaving `build_docs` alone.
| * | | | tor-netdoc: Un-gate parse2 in doc/routerdesc.rsIan Jackson2026-04-281-1/+0
| | | | | | | | | | | | | | | | | | | | This is just one cfg, for RelayPlatform.
| * | | | tor-netdoc: Un-gate parse2 and encode in types/relay_flags.rsIan Jackson2026-04-281-6/+0
| | | | | | | | | | | | | | | | | | | | There is one irrelevant TODO.
| * | | | tor-netdoc: Un-gate features in types/policy/addrpolicy.rsIan Jackson2026-04-281-3/+0
| | | | | | | | | | | | | | | | | | | | There is only one TODO in this file and it's not really relevant.
| * | | | tor-netdoc: Un-gate features in types/family.rsIan Jackson2026-04-281-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | There is one TODO DIRMIRROR but it's a possible API change. I think it doesn't mean we can't un-gate this now.
| * | | | tor-netdoc: Un-gate features in types/policy/portpolicy.rs (fmt)Ian Jackson2026-04-281-16/+15
| | | | |
| * | | | tor-netdoc: Un-gate features in types/policy/portpolicy.rs (tidy)Ian Jackson2026-04-281-6/+0
| | | | |
| * | | | tor-netdoc: Un-gate features in types/policy/portpolicy.rsIan Jackson2026-04-281-9/+2
| | | | | | | | | | | | | | | | | | | | These are all parse2, and there are no blocking TODOs.
| * | | | tor-netdoc: Un-gate features in types/policy.rs (fmt)Ian Jackson2026-04-281-10/+10
| | | | |
| * | | | tor-netdoc: Un-gate features in types/policy.rs (tidy)Ian Jackson2026-04-281-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove a now-pointless pair of { }. We'll reindent this in a moment.
| * | | | tor-netdoc: Un-gate features in types/policy.rsIan Jackson2026-04-281-3/+1
| | |/ / | |/| | | | | | | | | | These are all parse2, and there are no blocking TODOs.
* | | | Merge branch 'proto-rpc' into 'main'Nick Mathewson2026-04-287-5/+280
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | Implement path inspection for RPC Closes #2286 See merge request tpo/core/arti!3888
| * | | arti-rpcserver: Require tor-proto/rpc.Nick Mathewson2026-04-281-1/+1
| | | |
| * | | proto rpc: Turn tunnel paths into a dictNick Mathewson2026-04-283-9/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will make it possible to tell whether a path has been replaced in the tunnel. Since the UniqId type might change its representation in the future, I've documented that we don't guarantee anything about the strings used to distinguish paths.
| * | | proto rpc: Change PathEntry to an enum.Nick Mathewson2026-04-281-28/+30
| | | |
| * | | rpc: Have OneShotClient delegate to ClientDataStreamCtrl.Nick Mathewson2026-04-281-2/+5
| | | | | | | | | | | | | | | | | | | | This enables the rpc client to call "arti:describe_path" and similar methods on streams constructed via this mechanism.
| * | | proto: Add an RPC function to access tunnel and inspect its path.Nick Mathewson2026-04-282-0/+225
| | | | | | | | | | | | | | | | Additionally, allow inspecting tunnel paths directly from streams.