summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | tor-netdoc: Explain that Ignored can't be used as an argumentIan Jackson2025-10-081-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is FromStr (which is fine). Which emant it was ItemArgumentParseable but but it can't be Display so it can't be NormalItemArgument. This illuminates the fact that it shouldn't really be ItemArgumentParseable since we're going to want all types that are in netdoc structs to be both parseable and printable.
* | | | | tor-netdoc: replace impl_item_argument_as_display with NormalItemArgumentIan Jackson2025-10-081-26/+8
| | | | |
* | | | | tor-netdoc: Narrow ItemArgument impl on `&_` to just `&str`Ian Jackson2025-10-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're going to indirect the impls of `ItemArgument` in terms of `FromStr` via a blanket on `impl NormalItemArgument`. For trait coherence reasons we can't have an blanket impl on `&impl ItemArgument` any more.
* | | | | tor-netdoc: Introduce `NormalItemArgument` impl-enabler traitIan Jackson2025-10-087-2/+43
| | | | | | | | | | | | | | | | | | | | | | | | | This is currently used to enable `parse2::ItemArgumentParseable`. In a moment it will enable `build::ItemArgument` too.
* | | | | tor-netdoc: parse2 poc: impl Display for several typesIan Jackson2025-10-084-3/+9
| | | | |
* | | | | tor-netdoc: parse2 poc: break out some constantsIan Jackson2025-10-081-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | We'll want this for both types eventually, when we do printing at the very least.
* | | | | tor-netdoc: impl Display for Fingerprint and Base64FingerprintIan Jackson2025-10-082-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm going to want this as preparation for making these things properly suitable for item arguments. One test case in parse2::poc was relying on Display of the Deref to RsaIdentity.
* | | | | tor-netdoc: Add a test case for Base64Fingerprint parsingIan Jackson2025-10-081-0/+4
| | | | | | | | | | | | | | | | | | | | Somehow there wasn't one of these.
* | | | | tor-netdoc: impl From<Base64Fingerprint> for RsaIdentityIan Jackson2025-10-081-1/+1
| |/ / / |/| | | | | | | | | | | This orthogonally necessary impl seems to have been overlooked.
* | | | Merge branch 'mv-flow-ctrl' into 'main'gabi-2502025-10-0820-30/+32
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | proto: Move flow_ctrl module under stream. See merge request tpo/core/arti!3335
| * | | | proto: Fix flow control docs post-move.Gabriela Moldovan2025-10-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `StreamFlowCtrl` is no longer accessible via `tor_proto::client`, so I had to update one of the (doc) imports with its new path Also, I had to change a couple of imports to use `DataWriter` and `DataStream` from `crate::client::stream` instead of `crate::client::stream::data`, because the latter is not visible from `flow_ctrl` anymore.
| * | | | proto: Move flow_ctrl module under stream (fmt).Gabriela Moldovan2025-10-0711-22/+18
| | | | |
| * | | | proto: Move flow_ctrl module under stream.Gabriela Moldovan2025-10-0720-24/+25
| | | | | | | | | | | | | | | | | | | | This will be used by exits too, so I am moving it out of `client`.
| * | | | proto: Add a top-level stream module.Gabriela Moldovan2025-10-072-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | This will house the implementation-agnostic stream types and functionality.
* | | | | Merge branch 'fallbackdirs-06-10-2025' into 'main'David Goulet2025-10-071-899/+886
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | fallbackdir: Update list generated on October 06, 2025 See merge request tpo/core/arti!3328
| * | | | | fallbackdir: Update list generated on October 06, 2025Tor CI Release2025-10-071-899/+886
| | |_|/ / | |/| | | | | | | | | | | | | Signed-off-by: Tor CI Release <[email protected]>
* | | | | Merge branch 'x509-gen' into 'main'Nick Mathewson2025-10-075-3/+313
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | Generate x509 self-signed identity key certificates. (CERT_TYPE 02) Closes #2197 See merge request tpo/core/arti!3324
| * | | | Require rsa 0.9.2 for SignatureBitStringEncoding.Nick Mathewson2025-10-071-1/+1
| | | | |
| * | | | tor-cert: Generate x509 identity certificates for CERT cellsNick Mathewson2025-10-073-3/+232
| | | | | | | | | | | | | | | | | | | | Closes #2197.
| * | | | tor-basic-utils: New function to generate random hostname.Nick Mathewson2025-10-072-0/+81
| | |/ / | |/| | | | | | | | | | | | | | | | | | We'll be using this for x509 certificates in #2197. We might also use it for SNI/ESNI as in !198.
* | | | Merge branch 'parse2-prep-more' into 'main'opara2025-10-075-4/+21
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-netdoc: parse2: Three minor fixes and a new function See merge request tpo/core/arti!3326
| * | | | tor-netdoc: parse2: Make NetdocParseableFields work out of-moduleIan Jackson2025-10-061-0/+9
| | | | |
| * | | | tor-netdoc: parse2: Break out check_no_objectIan Jackson2025-10-062-1/+9
| | | | | | | | | | | | | | | | | | | | This will be useful for impls of ItemValueParseable.
| * | | | tor-netdoc: parse2: Fix variety ordering in a doc commentIan Jackson2025-10-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | We changed the ordering at some point. This comment seems to have been overlooked.
| * | | | tor-netdoc: parse2: Fix ItemValueParseable field attribute `with`Ian Jackson2025-10-062-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | According to the docs this is supposed to name the module, not the function. (This will be necessary when we do netdoc generation.)
* | | | | Merge branch '5225225/fix-fuzzing' into 'main'opara2025-10-076-37/+65
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | fuzzing: fix up targets to compile See merge request tpo/core/arti!3284
| * | | | Undo change to use ns_consensus feature, fix target to not need it52252252025-10-072-3/+3
| | | | |
| * | | | fuzzing: fix up targets to compile52252252025-10-077-37/+65
| | |_|/ | |/| |
* | | | tor-proto: deprecate handshake-specific create/extend variantsNick Mathewson2025-10-071-0/+10
| |_|/ |/| | | | | | | | | | | | | | | | | Everybody should use create_firsthop() and extend(), and let tor-proto decide which handshake is best. Closes #1990.
* | | Merge branch 'orport-addrs' into 'main'Ian Jackson2025-10-0717-64/+78
|\ \ \ | | | | | | | | | | | | | | | | Unify and tidy addrs methods from tor-linkspec and routerdescs See merge request tpo/core/arti!3300
| * | | tor-netdoc: Remove obsolete commentIan Jackson2025-10-061-2/+0
| | | | | | | | | | | | | | | | There is no longer a trait.
| * | | tor-netdoc: RouterStatus: unify `orport_addrs` and `addrs` methodsIan Jackson2025-10-064-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | tor-linkspec: Change HasAddrs::addrs to return an Iterator (fmt)Ian Jackson2025-10-062-2/+7
| | | |
| * | | tor-linkspec: Change HasAddrs::addrs to return an IteratorIan Jackson2025-10-0614-55/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will let us model the actual structure of routerstatus entries in netdocs more closely. They don't have the addresses in a single list. When this code was written this would have been much more awkward, but now we have RPITIT.
* | | | Merge branch 'netdoc-rework-more' into 'main'Ian Jackson2025-10-076-31/+30
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | tor-netdoc: Regularise some parsing See merge request tpo/core/arti!3325
| * | | tor-netdoc: Make rs `identity` field a Base64FingerprintIan Jackson2025-10-064-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | tor-netdoc: Provide Base64FingerprintIan Jackson2025-10-063-8/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | tor-netdoc: Use derive_more to derive some From implsIan Jackson2025-10-061-21/+3
| |/ /
* | | Merge branch 'arti-relay-rsa-keys' into 'main'wesleyac2025-10-066-11/+74
|\ \ \ | | | | | | | | | | | | | | | | Lay foundations for RSA keys in keystore. See merge request tpo/core/arti!3296
| * | | tor-relay-crypto: Fix KP_relayid_rsa typo.Wesley Aptekar-Cassels2025-10-021-1/+1
| | | |
| * | | Lay foundations for RSA keys in keystore.Wesley Aptekar-Cassels2025-09-306-11/+74
| | | | | | | | | | | | | | | | | | | | | | | | This currently can't be used due to upstream limitations in the ssh_key crate, which will be removed likely in the next release. In the meantime, we can put in all the groundwork.
* | | | Merge branch 'chan_padder' into 'main'Nick Mathewson2025-10-069-59/+383
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Apply maybenot padding to channels See merge request tpo/core/arti!3314
| * | | | proto: Add a comment to note a naming issue.Nick Mathewson2025-10-021-0/+4
| | | | |
| * | | | proto: experimental API to install a per-channel padder.Nick Mathewson2025-10-022-0/+44
| | | | |
| * | | | proto: Implement channel padding with maybenot padders.Nick Mathewson2025-10-023-14/+95
| | | | | | | | | | | | | | | | | | | | With this commit we now actually generate padding when we're told to.
| * | | | proto: start implementing logic for padding actions.Nick Mathewson2025-10-024-3/+48
| | | | |
| * | | | Add a blocker to channel outbound sink.Nick Mathewson2025-10-023-1/+20
| | | | |
| * | | | proto: Make DynTimeProvider explicit in channel padder types.Nick Mathewson2025-10-021-2/+6
| | | | |
| * | | | proto: Trigger maybenot events for channel-level padding.Nick Mathewson2025-10-023-7/+44
| | | | |
| * | | | proto: Generate per-sender NormalSent events from circuits.Nick Mathewson2025-10-012-4/+14
| | | | |