aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | tor-netdoc: rustfmtIan Jackson2025-12-181-2/+1
| | | |
| * | | tor-netdoc: Preamble: Parse published in votesIan Jackson2025-12-183-0/+5
| | | |
| * | | tor-netdoc: Preamble: Parse consensus-methods in votesIan Jackson2025-12-184-1/+5
| | | |
| * | | tor-netdoc: Preamble: Fix consensus-method parsing in votesIan Jackson2025-12-181-1/+1
| | | |
| * | | tor-netdoc: impl NetdocParseableFields for PreambleIan Jackson2025-12-181-0/+12
| | | |
| * | | tor-netdoc: impl ItemValueParseable for NetParams<i32>Ian Jackson2025-12-181-1/+11
| | | |
| * | | tor-netdoc: impl NetdocParseableFields for ProtoStatusesIan Jackson2025-12-181-1/+63
| | | |
| * | | tor-netdoc: Use $P for prelude in one placeIan Jackson2025-12-182-2/+2
| |/ / | | | | | | | | | This was missed, apparently.
* | | Merge branch 'feat/retry-error-timestamps' into 'main'Ian Jackson2025-12-179-47/+399
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | retry-error timestamps Closes #2269 See merge request tpo/core/arti!3506
| * | | fix(download): Use push_timed with mockable time sourcesNihal2025-12-171-2/+2
| | | |
| * | | 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-175-16/+50
| | | | | | | | | | | | | | | | rend_handshake time
| * | | refactor: remove early returns and forbid push() via clippyNihal2025-12-171-5/+6
| | | |
| * | | refactor: clean codeNihal2025-12-175-105/+144
| | | |
| * | | feat(retry-error): add timestamps to retry errorsNihal2025-12-176-52/+221
| |/ /
* / / 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 'listen_on_auto' into 'main'Nick Mathewson2025-12-169-75/+486
|\ \ | | | | | | | | | | | | | | | | | | 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-168-24/+267
| | | | | | | | | | | | | | | 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.
* | | arti,arti-relay: change info keystore path msg to debugSteven Engler2025-12-112-3/+8
|/ /
* | 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.
* | | 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]>
* | | proto: Make ClientCircChanMsg pub(super)David Goulet2025-12-101-1/+1
| | | | | | | | | | | | Signed-off-by: David Goulet <[email protected]>
* | | proto: Move unit tests and minor fixDavid Goulet2025-12-103-24/+23
| | | | | | | | | | | | | | | | | | Move the client specific unit tests into the client module. Signed-off-by: David Goulet <[email protected]>
* | | proto: Client circuit reactor now handles AnyChanMsgDavid Goulet2025-12-109-34/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit removes the CircuitRx* based solely on the client circuit message and moves it into the top level of the crate so all reactors can use them. The client reactor then upon receiving the message, it converts the AnyChanMsg into a ClientCircChanMsg. On error, this leads to a shutdown of the entire reactor due to a fatal error. In order to pull this off, we added a CircuitAction::Shutdown that is handled as a priority. Signed-off-by: David Goulet <[email protected]>
* | | proto: Move RelayCircChanMsg into relay moduleDavid Goulet2025-12-105-27/+29
| | | | | | | | | | | | | | | | | | This follows the move of the client specific object. Signed-off-by: David Goulet <[email protected]>
* | | proto: Move ClientCircChanMsg into client moduleDavid Goulet2025-12-107-34/+39
| | | | | | | | | | | | | | | | | | | | | | | | Next commit will also move the Relay specific set into the relay module. These two sets are becoming specific to the reactor as the circuit reactor communication channel will use AnyChanMsg instead. Signed-off-by: David Goulet <[email protected]>