summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | Introduce maint/dependencies-bodge crateIan Jackson2026-03-315-0/+32
|/ / / / / / /
* | | | | | | Merge branch 'audit' into 'main'Ian Jackson2026-03-311-4/+22
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cargo audit exception list review See merge request tpo/core/arti!3841
| * | | | | | | cargo-audit: Add TODO DIRAUTH for Marvin attackIan Jackson2026-03-311-4/+12
| | | | | | | |
| * | | | | | | cargo-audit: Add blank lines to make it more readable.Ian Jackson2026-03-311-0/+10
| | | | | | | |
* | | | | | | | Merge branch 'release-arising' into 'main'Ian Jackson2026-03-312-18/+36
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Release process updates arising from 2.2.0 See merge request tpo/core/arti!3842
| * | | | | | | | maint/cargo-sort: Say that you must use the right versionIan Jackson2026-03-311-0/+3
| | | | | | | | |
| * | | | | | | | Release.md: Improve ordering and prioritisation of post-release activitesIan Jackson2026-03-311-6/+12
| | | | | | | | |
| * | | | | | | | Release.md: Note that cargo sort may be neededIan Jackson2026-03-311-0/+4
| | | | | | | | |
| * | | | | | | | maint/cargo-sort: InstructionsIan Jackson2026-03-311-0/+5
| | | | | | | | |
| * | | | | | | | maint/cargo-sort: Honour CARGO env varIan Jackson2026-03-311-1/+1
| | | | | | | | |
| * | | | | | | | Release.md: Look at tool exception lists after release, not beforeIan Jackson2026-03-311-11/+11
| |/ / / / / / /
* | | | | | | | Merge branch 'oniux-0.10.0' into 'main'Ian Jackson2026-03-311-1/+1
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | web: Update oniux 0.10.0 See merge request tpo/core/arti!3840
| * | | | | | | | web: Update oniux 0.10.0Clara Engler2026-03-311-1/+1
| | | | | | | | |
* | | | | | | | | Merge branch 'authcert-encode-prep' into 'main'Ian Jackson2026-03-319-28/+32
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: Renamings preparatory to authcert encoder See merge request tpo/core/arti!3826
| * | | | | | | | | tor-netdoc: Rename `AuthCertUnverified::verify_self_signed`Ian Jackson2026-03-314-16/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This method verifies all the signatures, and checks that the signing authority is in the provided list. Anyway, authcerts aren't really self-signed: they're a signature by KS_auth_id_rsa on KP_auth_sign_rsa. Note that there is also a `verify_selfcert` method which does only some of the checks, and has some code duplication. That will be cleaned up later.
| * | | | | | | | | tor-netdoc: encoder: Rename .object() method to .object_bytesIan Jackson2026-03-316-12/+13
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the introduction of the derives for document encoding, we now have a trait ItemObjectEncodable. We will want a method on ItemEncoder that takes an ItemObjectEncodable, and that should be called `object` since it's a better approach than working ad-hoc with tor_bytes::Writeable. (For example, an ItemObjectEncodable knows its own label.) So, rename `object` to `object_bytes`.
* | | | | | | | | Merge branch 'deps-wasm' into 'main'David Goulet2026-03-312-2/+2
|\ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | Update getrandom dependeency See merge request tpo/core/arti!3837
| * | | | | | | | Update getrandom dependeencyIan Jackson2026-03-312-2/+2
| | |/ / / / / / | |/| | | | | |
* | | | | | | | Merge branch 'fixes_mr3791' into 'main'David Goulet2026-03-3116-469/+613
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Address post-merge comments from nickm's review in mr 3791 See merge request tpo/core/arti!3802
| * | | | | | | | proto: Add debug_assert_eq() when building AuthenticateDavid Goulet2026-03-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | cell: Add Authenticate::BODY_LEN as a public constDavid Goulet2026-03-302-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We use this constant value when building the AUTHENTICATE cell to optimize the memory allocation as this won't ever change. Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | linkspec: Rename has_all_public_addresses()David Goulet2026-03-302-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Import read_msg() instead of refering to itDavid Goulet2026-03-301-19/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Improve check_relay_identities() documentationDavid Goulet2026-03-301-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | linkspec: Rename has_all_reachable_addresses()David Goulet2026-03-302-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | linkspec: Rename has_all_valid_port() to has_all_nonzero_port()David Goulet2026-03-302-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | linkspec: Move has_all_valid_port() and has_all_reachable_addresses() into ↵David Goulet2026-03-302-35/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ChanTarget Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Rename RelayIdentities to RelayChannelAuthMaterialDavid Goulet2026-03-3010-108/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This object contains a melting pot of public keys, private keys and certificates. Rename it to reflect that it is channel authentication material and not "identities. https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374454 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Remove noop function for initiator channelDavid Goulet2026-03-301-12/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No need to call `set_authenticated()` for a relay initiator channel because relay initiator channel are always authenticated and thus the underlying channel cell codec will always use the R2R restricted message set. This is only useful to a relay responder channel. The naming of that function is not great actually and should probably change. Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Rename many variables with more fine grained namingDavid Goulet2026-03-307-127/+144
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mostly, identity a `ChanTarget` as a "target" since we juggle with PeerInfo and OwnedChanTarget nowadays. All certificate and keys have very specific names which attempts to match the spec as much as possible. Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Transform inner into verified after verificationDavid Goulet2026-03-302-20/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only get the inner generic unverified channel into a verified channel after the actual verification in the relay responder handshake. Some variables needed a rename as this was dangerously named. No behavior change. https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374481 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Add documentation for the channel verify()David Goulet2026-03-302-2/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374476 and https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374478 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Remove duplicate use of read_msg() helperDavid Goulet2026-03-302-82/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make read_msg() into a helper and use it accross the handshake code. No behavior change. https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374466 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Add names to ignored variablesDavid Goulet2026-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374465 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Set a hardcoded number into a constDavid Goulet2026-03-301-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374462 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Fix a set of commentsDavid Goulet2026-03-304-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Add AuthLogAction enum helperDavid Goulet2026-03-303-13/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can remove the "/* take_slog */ true" pattern and instead have an explicit type at the callsite for semantic. https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374457 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | proto: Add a type alias for SLOG/CLOG digestDavid Goulet2026-03-307-29/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374457 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | chanmgr: Always use MaybeSensitive<PeerAddr> when building a channelDavid Goulet2026-03-302-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | chanmgr: Add a build_client_channel() helper functionDavid Goulet2026-03-301-59/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves the client channel building code into build_client_channel() to match the build_relay_channel() function pattern. No behavior change, just code movement. Small changes were needeed (reference for instance) but no behavior change. https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374448 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | chanmgr: Move relay target PT validation in validate_relay_target()David Goulet2026-03-301-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | chanmgr: Validate the relay channel target addressesDavid Goulet2026-03-301-1/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure the port is non zero and that all addresses are globally reachable. Notice the use of ChanProto error in this commit instead of UnusableTarget. Relay channel initiator are opened by the circuit reactor meaning from an EXTEND2 request meaning the target is not controlled by us so any errors is a channel protocol violation. UnusableTarget is an internat Bug. https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374447 Signed-off-by: David Goulet <[email protected]>
| * | | | | | | | linkspec: Add OwnedChanTarget address validation helpersDavid Goulet2026-03-301-1/+34
| | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The has_all_reachable_addresses() should be used to validate the channel target of a request to open a relay channel. The function looks for non routable addresses or, most importantly, private addresses. The other function is to validate that all socket addresses have a non zero port. Signed-off-by: David Goulet <[email protected]>
* | | | | | | | Merge branch 'rustsec-response' into 'main'Nick Mathewson2026-03-311-2/+37
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Try to document our policy for upstream RUSTSEC issues Closes #2348 See merge request tpo/core/arti!3800
| * | | | | | | | SecurityResponse: Clarity suggestions from @diziet.Nick Mathewson2026-03-261-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Notably, make it clear that we actually need to analyze issues!
| * | | | | | | | Try to document our policy for upstream RUSTSEC issuesNick Mathewson2026-03-231-2/+33
| | | | | | | | |
* | | | | | | | | Merge branch 'feature_related_policies' into 'main'Nick Mathewson2026-03-312-0/+181
|\ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | Document feature-related policies. See merge request tpo/core/arti!3799
| * | | | | | | | doc: Add a document explaining how we use cargo featuresNick Mathewson2026-03-301-0/+110
| | | | | | | | |
| * | | | | | | | doc: Policy about big changes in artiNick Mathewson2026-03-301-0/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a document about how to propose "big" changes in arti, and how to gather consensus for them.
* | | | | | | | | Merge branch 'deps' into 'main'Nick Mathewson2026-03-3135-97/+96
|\ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / |/| | | | / / / / | | |_|_|/ / / / | |/| | | | | | Non-breaking "Breaking" dependency updates See merge request tpo/core/arti!3836