summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | tor-config: Have macros document more types and fnsNick Mathewson2026-02-242-0/+3
| | | |
* | | | arti: Port logging config to dd(TorConfig)Nick Mathewson2026-02-242-132/+71
| | | |
* | | | tor-config: Fix cfg() on sub_buildersNick Mathewson2026-02-241-0/+12
| | | | | | | | | | | | | | | | | | | | Previously, it used the sub_builder rule, which doesn't make sense when the value is a stub place-holder to tell us whether to warn.
* | | | tor-relay: convert to derive_deftly(TorConfig)Nick Mathewson2026-02-242-56/+44
| | | |
* | | | arti-client: Convert config to derive_deftly(TorConfig).Nick Mathewson2026-02-241-115/+94
| | | | | | | | | | | | | | | | | | | | (There are a few places where we still do things in nonstandard places to avoid API breakage.)
* | | | memquota: Implement ExtendBuilder for config builder.Nick Mathewson2026-02-241-0/+13
| | | |
* | | | keymgr: Port to derive_deftly(TorConfig)Nick Mathewson2026-02-241-44/+33
|/ / / | | | | | | | | | | | | As with previous modules, I've left some thing less conformant with our "standard" APIs in order to keep backward compat (for now).
* | | relay-crypto: Move comments above [derive] to be consistent accross codebaseDavid Goulet2026-02-231-7/+7
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Setup const for hardcoded value in crypto taskDavid Goulet2026-02-231-8/+13
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Log when key generation yields an existing key errorDavid Goulet2026-02-231-1/+4
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Simplify the crypto rotation task rotate_key()David Goulet2026-02-231-17/+11
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Get rid of start_task() for readabilityDavid Goulet2026-02-232-22/+10
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Generate relay identities at initDavid Goulet2026-02-232-7/+17
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Implement a helper to build RelayIdentitiesDavid Goulet2026-02-233-7/+116
| | | | | | | | | | | | | | | | | | | | | This required to add a slight helper to our tor-key-forge RSA key d-d macro to access the inner keypair. This avoids a clone. Signed-off-by: David Goulet <[email protected]>
* | | relay-crypto: Fix the gen relay signing keypair typoDavid Goulet2026-02-231-3/+3
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | proto: Modify RelayIdentities to have encodable certDavid Goulet2026-02-232-14/+17
| | | | | | | | | | | | | | | | | | | | | This commit also adds the TlsKeyAndCert to the identities so the TLS acceptor can set it up. Signed-off-by: David Goulet <[email protected]>
* | | relay-crypto: Add gen_tls_cert() helper functionDavid Goulet2026-02-232-1/+18
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Remove unused ephemeral keystoreDavid Goulet2026-02-231-5/+1
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay: Move try_generate_keys() into crypto taskDavid Goulet2026-02-232-39/+29
| | | | | | | | | | | | | | | | | | | | | Move rotating keys into a function so we can use it in try_generate_keys() that is used at startup. Signed-off-by: David Goulet <[email protected]>
* | | relay: Add a crypto task for key rotationDavid Goulet2026-02-233-1/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This task crypto module has a rotate key task that is in charge of rotating keys from our KeyMgr based on the valid until. To do so, we add a RotatableKeySpec trait to help us specify our to rotate a specific key. Allows us to have a generic rotate/generate function for all our keys. Task runs every 60 seconds. Taken from C-tor. Signed-off-by: David Goulet <[email protected]>
* | | relay-crypto: Add missing helper functionsDavid Goulet2026-02-231-0/+13
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | relay-crypto: Add link signing key specifierDavid Goulet2026-02-231-0/+32
| |/ |/| | | | | Signed-off-by: David Goulet <[email protected]>
* | Merge branch 'config-migrate-part1' into 'main'gabi-2502026-02-2017-217/+166
|\ \ | |/ |/| | | | | Port several crates to derive_deftly(TorConfig) See merge request tpo/core/arti!3691
| * hsservice: Port to use derive_deftly(TorConfig)Nick Mathewson2026-02-173-31/+46
| | | | | | | | | | Some of the behaviors of the existing types here are nonstandard; I've kept them and documented them, to avoid breaking compatibility.
| * tor-config: fix and improve ExtendBuilder override.Nick Mathewson2026-02-172-3/+15
| | | | | | | | | | | | | | | | 1. When we are told to `extend_with`, we should obey that directive even if we have a sub_builder etc. 2. Provide an `extend_with_replace` function for the common case where we want to just replace one object with another.
| * tor-config: derive list builders with the visibility of their setters.Nick Mathewson2026-02-171-1/+1
| |
| * tor-hsrproxy: migrate to derive_deftly(TorConfig)Nick Mathewson2026-02-172-29/+7
| |
| * ptmgr: Migrate to derive_deftly(TorConfig)Nick Mathewson2026-02-172-12/+12
| |
| * chanmgr: migrate to derive_deftly(TorConfig)Nick Mathewson2026-02-172-14/+14
| |
| * dircommon: Port to use derive_deftly(TorConfig)Nick Mathewson2026-02-175-120/+66
| | | | | | | | | | Some of the behaviors of the existing types here are nonstandard; I've kept them and documented them, to avoid breaking compatibility.
| * guardmgr: Migrate config to derive_deftly.Nick Mathewson2026-02-171-7/+5
| |
* | proto: Filter the IP address in the channel's OwnedChanTargetDavid Goulet2026-02-191-23/+35
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Reuse the RelayIds builder during the handshakeDavid Goulet2026-02-191-18/+11
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Pass PeerAddr at the channel handshake finish for initiatorsDavid Goulet2026-02-198-72/+37
| | | | | | | | | | | | | | | | | | | | Responder relay handshake requires the peer address at the very start as it sends its NETINFO right away. For initiators, we only need it during the finalization process which is when the NETINFO is sent and the Channel is created. Signed-off-by: David Goulet <[email protected]>
* | chanmgr: Add a TODO() for logging PeerAddr instaed of ChanTargetDavid Goulet2026-02-191-0/+4
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | chanmgr: Fix channel builder commentDavid Goulet2026-02-191-6/+1
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Use constructor for PeerInfo instead of BuilderDavid Goulet2026-02-192-18/+16
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Remove Default of PeerInfo/Addr and use const insteadDavid Goulet2026-02-194-31/+41
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Fix clippy errorsDavid Goulet2026-02-191-3/+1
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Put a PeerInfo in ChannelDavid Goulet2026-02-193-3/+40
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | proto: Use the PeerAddr accross channel handshakeDavid Goulet2026-02-1913-113/+115
| | | | | | | | | | | | | | This is a large change but it is basically using PeerAddr in the channel builder through the channel handshake code and into the Channel itself. Signed-off-by: David Goulet <[email protected]>
* | proto: Add PeerInfo and PeerAddr in src/peer.rsDavid Goulet2026-02-193-0/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The plan is to create PeerInfo when we do a transport connect() which indicates the exact values that are being used for to connect to the peer. We'll then put this struct in the Channel so we can use it when picking the best channel in the ChanMgr. Unfortunately, the OwnedChanTarget has a confusing and even possibly wrong API from which we can't have guarantees. Signed-off-by: David Goulet <[email protected]>
* | proto: Remove unused ChannelBuilderDavid Goulet2026-02-193-79/+5
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | linkspec: Add missing feature gateDavid Goulet2026-02-191-0/+1
| | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | Merge branch 'generate_rsa_crosscert' into 'main'Nick Mathewson2026-02-193-5/+141
|\ \ | | | | | | | | | | | | tor-cert: Ability to create Rsa->Ed25519 crosscerts. See merge request tpo/core/arti!3701
| * | tor-cert: Ability to create Rsa->Ed25519 crosscerts.Nick Mathewson2026-02-193-5/+141
| | |
* | | Merge branch 'ticket_3548' into 'main'Nick Mathewson2026-02-196-103/+164
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | arti: Refactor proxy launcher functions. Closes #2301 See merge request tpo/core/arti!3686
| * | | arti: Fix up proxy launching documentationNick Mathewson2026-02-192-3/+5
| | | |
| * | | arti: Extract responsibility for port listing.Nick Mathewson2026-02-196-98/+108
| | | | | | | | | | | | | | | | | | | | Instead of doing this when we construct the listeners, we can do it in a separate method, to simplify the return type.
| * | | arti: Refactor socks proxy launcher function.Nick Mathewson2026-02-192-16/+40
| | | | | | | | | | | | | | | | Part of #2301.