summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | chore: remove debug comments, use let-elseNihal2025-12-171-18/+9
| | | | |
| * | | | fix: preserve Attempt variant directlyNihal2025-12-171-26/+33
| | | | |
| * | | | fix: preserve Attempt::Range when extendingNihal2025-12-171-5/+60
| | | | |
| * | | | fix: preserve timestamps when flattening RetryErrorsNihal2025-12-172-7/+48
| | | | |
| * | | | chore: remove unncesarry fileNihal2025-12-171-56/+0
| | | | |
| * | | | fix: use wallclock timestamps in all push_timed callsNihal2025-12-175-26/+94
| | | | |
| * | | | fix: semver labels and extend() with push_timed loopNihal2025-12-172-5/+8
| | | | |
| * | | | refactor: convert Extend to inherent method, forbid push/extend, fix ↵Nihal2025-12-176-16/+51
| | | | | | | | | | | | | | | | | | | | rend_handshake time
| * | | | refactor: remove early returns and forbid push() via clippyNihal2025-12-172-5/+7
| | | | |
| * | | | refactor: clean codeNihal2025-12-175-105/+144
| | | | |
| * | | | feat(retry-error): add timestamps to retry errorsNihal2025-12-177-52/+222
| | |/ / | |/| |
* | | | Merge branch 'ticket_2303' into 'main'Nick Mathewson2025-12-173-4/+29
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | rpc-connect-point: Decline (not abort) on more invalid address formats. Closes #2303 See merge request tpo/core/arti!3553
| * | | rpc-connect-spec: Describe new behavior.Nick Mathewson2025-12-171-0/+3
| | | |
| * | | rpc-connect-point: Decline (not abort) on more invalid address formats.Nick Mathewson2025-12-172-4/+26
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | When we see an address schema we don't recognize, we're supposed to _decline_ the connect point rather than aborting. Closes #2303. See discussion at #1844. Additionally, we tolerate more kinds of invalid address, in order to permit future planned extensions.
* | | Merge branch 'main' into 'main'opara2025-12-171-0/+1
|\ \ \ | | | | | | | | | | | | | | | | ci: always run pages job See merge request tpo/core/arti!3549
| * | | ci: always run pages jobJérôme Charaoui2025-12-141-0/+1
| | | | | | | | | | | | | | | | | | | | it doesn't depend on anything else in the pipeline, so avoid skipping it when other jobs fail
* | | | Merge branch 'listen_on_auto' into 'main'Nick Mathewson2025-12-1610-75/+487
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow listening on port "auto", and reporting bound ports via a JSON file Closes #1758 See merge request tpo/core/arti!3548
| * | | | Improve socks_listen/dns_listen documentation.Nick Mathewson2025-12-161-3/+8
| | | | |
| * | | | arti: Move "port_info_file" configuration into "storage"Nick Mathewson2025-12-163-12/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was a little funny, since the other storage elements are declared in tor-client. Fortunately, our stacked configuration logic handles this fine.
| * | | | arti: tweak port_info documentation.Nick Mathewson2025-12-161-0/+3
| | | | |
| * | | | arti: Export the chosen ports in a ports_info.json file.Nick Mathewson2025-12-169-24/+268
| | | | | | | | | | | | | | | | | | | | | | | | | This allows applications to find out where arti is listening when arti has been configured to listen with the port "auto".
| * | | | arti: Change how proxy futures are returned.Nick Mathewson2025-12-163-26/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the proxy and dns modules only had "be a proxy" functions that ran forever. Now they have functions that bind to listeners and return a separate "be a proxy" future that runs forever. This lets us simplify some kludges in subcommands::proxy. More importantly, it will let us return the bound-to ports so that subcommands::proxy can write them to disk. This is a break in experimental-apis, which does not require a semver change.
| * | | | tor_config::listen: Warn on explicit port zero.Nick Mathewson2025-12-161-2/+17
| | | | |
| * | | | arti: tweak docs, add TODOs with respect to Listener.Nick Mathewson2025-12-163-1/+6
| | | | |
| * | | | arti: Log the actual addresses we are listening on.Nick Mathewson2025-12-162-4/+10
| | | | |
| * | | | tor_config::Listen: Add methods to check for auto and port 0.Nick Mathewson2025-12-161-0/+37
| | | | |
| * | | | tor_config::Listen: Add "auto" itemsNick Mathewson2025-12-161-7/+55
| | | | | | | | | | | | | | | | | | | | These are a nicer syntax than using port "0" explicitly.
| * | | | tor_config::Listen: Deprecate localhost_port_legacy.Nick Mathewson2025-12-161-1/+5
| | | | | | | | | | | | | | | | | | | | Nothing actually uses it any more, which is good.
| * | | | tor_config::Listen: Refactor legacy methods.Nick Mathewson2025-12-161-22/+26
| |/ / / | | | | | | | | | | | | | | | | Have the part of them that does the "no multiple addresses" work be common, so that we can simplify how they actually behave.
* | | | Merge branch 'no-stallouts' into 'main'wesleyac2025-12-167-0/+21
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | shadow CI: disable stallouts for onion clients See merge request tpo/core/arti!3529
| * | | | shadow CI: disable stallouts for onion clientsJim Newsome2025-12-087-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tgen aborts a stream and starts the next one when the "stallout" timeout is reached. In some cases the arti (or tor) client just needs a bit more time to establish a connection to the hidden service. A potential downside is that if a single stream "stalls" forever without an explicit error, tgen will never give up on it, and thus never try any more streams. We can worry about that if and when we see it though; and it would indicate a likely bug since the known clients and servers in this test shouldn't stall indefinitely in this way.
* | | | | Merge branch 'fs-path' into 'main'opara2025-12-152-3/+8
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | arti,arti-relay: Change info-level keystore path msg to debug See merge request tpo/core/arti!3546
| * | | | arti,arti-relay: change info keystore path msg to debugSteven Engler2025-12-112-3/+8
| | | | |
* | | | | Merge branch 'main' into 'main'Alexander Hansen Færøy2025-12-112-5/+38
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | build website for and deploy to static component Closes tpo/tpa/team#42288 See merge request tpo/core/arti!3547
| * | | | | build website for and deploy to static componentJérôme Charaoui2025-12-102-5/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this uses the static-shim-deploy template to deploy the arti website to arti.torproject.org, and tweaks the docusaurus baseUrl accordingly it requires a STATIC_GITLAB_SHIM_SSH_PRIVATE_KEY CI variable which is set up in project settings and contains the private key which allows deployment of assets to static component web hosts it also deploys a "_redirects" file to gitlab pages to ensure that the old URLs are redirected as previously, the website build and deployment jobs are only run in (nightly) scheduled pipelines
* | | | | | Merge branch 'ci-doc-artifacts' into 'main'Clara Engler2025-12-111-0/+13
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ci: Keep doc artifacts See merge request tpo/core/arti!3537
| * | | | | | ci: Keep doc artifactsClara Engler2025-12-111-0/+13
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because Rust 1.91.0 makes it economically unfeasiable to run `cargo doc` oneselves, it might wise to keep it as an artifact in `rust-dev-recent` and `rust-nightly`, which generate the docs anyways, so we can keep us away from having to run the expensive command when reviewing (larger) changes to documentation. For now, these artifacts will expire within a week. Maybe this should get discussed, because on my local machine, they are over 2GB large?
* | | | | | Merge branch 'semver-experimental' into 'main'Nick Mathewson2025-12-111-0/+6
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | doc: Mention `experimental` feature in Semver.md See merge request tpo/core/arti!3545
| * | | | | Fix some wordingClara Engler2025-12-111-2/+2
| | | | | |
| * | | | | doc: Mention `experimental` feature in Semver.mdClara Engler2025-12-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `experimental` feature flags are not explicitly mentioned anywhere in the `doc/Semver.md` file. This commit changes that by adding a paragraph documenting the status quo, namely that functionalities gated behind an opt-in experimental flag may break despite an unchanged major version number.
* | | | | | Merge branch 'tls12' into 'main'Nick Mathewson2025-12-101-1/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | arti: Remove 'rustls/tls12' feature See merge request tpo/core/arti!3540
| * | | | | | arti: remove 'rustls/tls12' featureSteven Engler2025-12-091-1/+0
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't rely on this within the arti crate, and tor-rtcompat already sets this. It's confusing to have it here as well. If the arti ecosystem requires this, it should be enabled on the lower level crates (like it already is in tor-rtcompat) so that arti-client users get it too.
* | | | | | Merge branch 'ticket1599_01' into 'main'David Goulet2025-12-1013-242/+261
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto: Remove client specific channel circuit message See merge request tpo/core/arti!3536
| * | | | | | proto: Add an immediate order for client CircuitEvent orderingDavid Goulet2025-12-101-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With a protocol violation, we have to immediately deal with such event before emitting anything on the wire. Signed-off-by: David Goulet <[email protected]>
| * | | | | | proto: Rename CircuitAction and cie to CircuitEventDavid Goulet2025-12-102-75/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This mirrors also the relay reactor. We've introduced the ProtoViolation into a previous commit which is not an action but rather an "event" that happened on a circuit. And so, better semantic. No behavior change. Signed-off-by: David Goulet <[email protected]>
| * | | | | | proto: #[macro_use] be gone!Gabriela Moldovan2025-12-104-2/+4
| | | | | | |
| * | | | | | proto: Rename Circuit{Action/Event}::Shutdown to ProtoViolationDavid Goulet2025-12-103-11/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | proto: Add TODO in client reactor for bad cellDavid Goulet2025-12-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because of https://gitlab.torproject.org/tpo/core/torspec/-/issues/385 Signed-off-by: David Goulet <[email protected]>
| * | | | | | proto: Move relay specific unit test to relay moduleDavid Goulet2025-12-102-25/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
| * | | | | | proto: Relay circuit reactor now handles AnyChanMsgDavid Goulet2025-12-103-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Same as the client reactor, a message outside of our restricted set leads to a reactor shutdown. Signed-off-by: David Goulet <[email protected]>