summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | tor-netdoc: impl conversions from tor-checkable errors to VerifyFailedIan Jackson2026-04-232-0/+18
| | | | |
| * | | | tor-netdoc: impl ItemValueEncodable for RouterSigEd25519Ian Jackson2026-04-231-1/+2
| | | | |
| * | | | tor-netdoc: impl ItemArgumet for ed25519::SignatureIan Jackson2026-04-232-1/+10
| | | | |
| * | | | tor-neteoc: RouterSigEd25519: Implement encode_signIan Jackson2026-04-231-0/+60
| | | | |
| * | | | tor-neteoc: RouterSigEd25519: break out hashIan Jackson2026-04-231-6/+15
| | | | | | | | | | | | | | | | | | | | We're going to need this for encoding too.
| * | | | tor-neteoc: de-cfg-gate routerdesc signaturesIan Jackson2026-04-231-2/+0
| | | | |
| * | | | tor-netdoc: RouterSignature: Add a TODO about maybe deduplicationIan Jackson2026-04-231-0/+1
| | | | |
| * | | | tor-netdoc: RouterSigEd25519: Add a TODO about maybe standardisationIan Jackson2026-04-231-0/+2
| | | | |
| * | | | tor-netdoc: Add RouterDescSignatures typeClara Engler2026-04-232-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | This commit implements the RouterDescSignatures type that carries the signatures for the yet to be derived RouterDescUnverified.
| * | | | tor-netdoc: Add RouterSigEd25519 typeClara Engler2026-04-232-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | This commit adds RouterSigEd25519 as a type to misc.rs for use in router descriptor signatures.
| * | | | tor-netdoc: Add RouterDescSignature typeClara Engler2026-04-232-1/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds RouterDescSignature to types, which implements SignatureItemParseable manually in order to also include the Ed25519 signature.
| * | | | tor-netdoc: Add RouterHashAccuClara Engler2026-04-232-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a hash accumulator for router descriptor signature hashes. We will need this because router descriptors have overlapping signatures.
| * | | | tor-netdoc: de-cfg-gate the types/misc/routerdesc moduleIan Jackson2026-04-232-2/+0
| | | | | | | | | | | | | | | | | | | | Part of #2492 phase 2.
| * | | | tor-netdoc: types/misc.rs: routerdesc: use super::*Ian Jackson2026-04-231-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | This avoids much repetition (and consequent conflicts as code is added).
| * | | | tor-netdoc: Better error message for failure to implement encoding traitIan Jackson2026-04-231-1/+1
| | | | |
* | | | | Merge branch 'netdoc-features-p2' into 'main'Ian Jackson2026-04-2710-156/+80
|\| | | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: Un-cfg much parse2 and encode See merge request tpo/core/arti!3915
| * | | | tor-netdoc: Gate authcert/encoded.rs and poc behind incomplete and ↵Ian Jackson2026-04-233-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | plain-consensus "incomplete" is correct since encoded authcert depends on votes. "plain-consensus" is going backwards, but stripping "plain-consensus" gates from everything will be very intrusive.
| * | | | tor-netdoc: Un-gate BASE64_PEM_MAX_LINEIan Jackson2026-04-231-1/+0
| | | | |
| * | | | tor-netdoc: Tidy use's in authcert.rsIan Jackson2026-04-231-9/+5
| | | | |
| * | | | tor-netdoc: Un-gate parse2 and encode in authcert.rsIan Jackson2026-04-231-31/+5
| | | | |
| * | | | tor-netdoc: types/misc.rs: un-gate two helper methodsIan Jackson2026-04-231-2/+0
| | | | |
| * | | | tor-netdoc: types/misc.rs: abolish a now-unneeded block in a testIan Jackson2026-04-231-26/+23
| | | | |
| * | | | tor-netdoc: types/misc.rs: tidy preivously cfg'd use'sIan Jackson2026-04-231-31/+25
| | | | |
| * | | | tor-netdoc: Remove much cfg in types/misc.rsIan Jackson2026-04-231-47/+14
| | | | | | | | | | | | | | | | | | | | | | | | | Unconditionally enable everything previously gated with parse2 or encode.
| * | | | tor-netdoc: Un-gate parse2 and encode coreIan Jackson2026-04-233-5/+0
| | | | |
| * | | | tor-netdoc: Make rand dependency unconditionalIan Jackson2026-04-231-4/+4
| |/ / / | | | | | | | | | | | | | | | | | | | | Part of #2492. We're going to make encode unconditional, and remove all the cfg-gates for it. Code currently gated by encode depends on rand.
* | | | Merge branch 'no-cpu-pinning' into 'main'Ian Jackson2026-04-272-0/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | CI: tune shadow for shared CI environment See merge request tpo/core/arti!3911
| * | | | integration-chutney-shadow: disable shadow spin-loopingJim Newsome2026-04-211-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | shadow's default behavior of spin-looping is bad behavior in a shared environment. This is already disabled in integration-shadow.
| * | | | CI: Disble shadow cpu-pinningJim Newsome2026-04-212-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In CI, shadow's default behavior of pinning to CPU cores can result in multiple instances of shadow fighting over the same CPU cores instead of using idle ones.
* | | | | Merge branch 'osx_min_version_10_14' into 'main'Ian Jackson2026-04-271-2/+1
|\ \ \ \ \ | |_|_|/ / |/| | | / | | |_|/ | |/| | Update MACOS_DEPLOYMENT_TARGET to 10.14 See merge request tpo/core/arti!3920
| * | | Remove now-false comment in reproducible-build.Nick Mathewson2026-04-261-1/+0
| | | |
| * | | Update MACOS_DEPLOYMENT_TARGET to 10.14Nick Mathewson2026-04-251-1/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This gives our reproducible-build tools permission to use APIs introduced in versions up to 10.14. Previously, we had this set to 10.12, which is the oldest version supported by Rust. Upgrading to 10.14 will allow us to merge !3817, and to upgrade security-framework to the latest version (#2387). OSX 10.14 ("Mojave") was released in September 2018, and hasn't been officially supported since October 2021. IMO it's a fine "very old version" for now.
* | | Merge branch 'osx-repro-update' into 'main'Nick Mathewson2026-04-232-19/+58
|\ \ \ | | | | | | | | | | | | | | | | Update the OSX SDK in our reproducible build. See merge request tpo/core/arti!3901
| * | | reproducible-build: version the osxcross directory.Nick Mathewson2026-04-181-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | This patch puts the osx tools build (which gets cached) into a directory that includes the SDK version, so that we don't get confused with older or newer SDK builds.
| * | | Update the OSX SDK in our reproducible build.Nick Mathewson2026-04-171-15/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: - Update the build target to 10.12, and define it in a single place. (We had 10.7 before, but Rust only supports 10.12 and higher. We will probably want to update this to something even more recent soon. - Use the default clang c++ library, rather than trying to force libstdc++, which OSX dropped after the 10.13 SDK. - Use the same clang++ for compilation and linking. - Use the 15.5 SDK. - Use a copy of the SDK with a known source. Specifically we start with the the pkg file from Apple, as cached by the TBB team on `build-sources.tbb.tpo`. Using a pkg file means that we have to run a script from them the tor-browser-build repository to extract the SDK files, and then run the osxcross script that repackages that SDK as a tar.xz file. I believe our script will make sure this gets cached. - Stop trying to use define an `ar`; nothing needs it.
| * | | docker-reproducible-build: Fix script name.Nick Mathewson2026-04-171-1/+1
| | | |
* | | | Merge branch 'rsa-identity-to-bytes' into 'main'Clara Engler2026-04-231-0/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-llcrypto: Add RsaIdentity::to_bytes() See merge request tpo/core/arti!3916
| * | | | tor-llcrypto: Add RsaIdentity::to_bytes()Clara Engler2026-04-231-0/+5
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds .to_bytes() to RsaIdentity which is similar to .as_bytes() except that it returns the RsaIdentity as a byte array. We are going to need this at a few places in tor-dirserver. The naming was inspired from x25519-dalek which has similar .as_bytes() and .to_bytes() methods. Besides, copying 20 bytes shall be okay and it avoids having to write ugly try_into() constructs.
* | | | Merge branch 'relay-circ-checks' into 'main'gabi-2502026-04-236-211/+347
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | proto: Reject EXTEND2 targeting the previous hop in the circuit Closes #2415 See merge request tpo/core/arti!3906
| * | | proto: Wrap PeerInfo in Arc<>Gabriela Moldovan2026-04-233-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | To avoid copying the same information for every circuit, as suggested by @opara in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3906#note_3399497
| * | | safelog: Add new MaybeSensitive::map() functionGabriela Moldovan2026-04-231-0/+15
| | | | | | | | | | | | | | | | | | | | This is analogous to `Option::map()`, and can be useful when you need to map the inner type of a `MaybeSensitive` to another type.
| * | | proto: Avoid collecting the chan identities in RelayIdSetGabriela Moldovan2026-04-231-10/+2
| | | | | | | | | | | | | | | | | | | | It doesn't make sense to do so, as pointed out by @opara in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3906#note_3398956
| * | | proto: Apply deferred rustfmtGabriela Moldovan2026-04-231-5/+2
| | | |
| * | | proto: Remove expect(unused) from channel PeerInfoGabriela Moldovan2026-04-231-1/+0
| | | | | | | | | | | | | | | | This is used in the relay circuit reactor.
| * | | proto: Build the PeerInfo from the dummy target in the testsGabriela Moldovan2026-04-231-5/+14
| | | | | | | | | | | | | | | | | | | | The new relay circuit reactor test expect the `PeerInfo` to be populated with the identity keys of the peer, and won't work without this change.
| * | | proto: Use PeerInfo in the extend handlerGabriela Moldovan2026-04-232-3/+4
| | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3906#note_3397922
| * | | proto: Add an accessor for the PeerInfo of a channelGabriela Moldovan2026-04-231-0/+6
| | | |
| * | | proto: Add test ensuring we won't extend to the previous hopGabriela Moldovan2026-04-231-1/+43
| | | |
| * | | proto: Reject EXTEND2 targeting the previous hop in the circuitGabriela Moldovan2026-04-231-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The relay reactor will now reject any EXTEND2 that tries to extend the circuit to a hop that shares any identities with our previous hop. Closes #2415
| * | | proto: Give the ExtendRequestHandler a copy of the inbound peer infoGabriela Moldovan2026-04-233-1/+8
| | | | | | | | | | | | | | | | | | | | This will soon be used for preventing the circuit from being extended to the previous hop (#2415).