summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | Revert "arti SOCKS proxy: Tear down connections when client sends optimistic ↵Ian Jackson2024-10-011-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | data" This reverts commit 87e0109832559dec41a485b268579d58be0de278.
| * | | | | | Revert "rpclib: read SOCKS _after_ processing."Ian Jackson2024-10-011-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 8da8b88481c26d49ac96e79165538e01237ec9ed.
* | | | | | | Merge branch 'try-send' into 'main'Ian Jackson2024-10-017-2/+345
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | / / | | |_|_|/ / | |/| | | | Introduce SinkTrySend trait and implement it See merge request tpo/core/arti!2468
| * | | | | tor-memquota: Implement SinkTrySend for mq_queue::SenderIan Jackson2024-10-012-1/+32
| | | | | | | | | | | | | | | | | | | | | | | | Plumbing.
| * | | | | tor-async-utils: Avoid needless nesting of ErasedSinkTrySendErrorIan Jackson2024-10-011-1/+22
| | | | | |
| * | | | | tor-async-utils: Provide tests for ErasedSinkTrySendErrorIan Jackson2024-10-013-0/+69
| | | | | |
| * | | | | tor-async-utils: Implement SinkTrySend for mpsc::SenderIan Jackson2024-10-014-0/+142
| | | | | |
| * | | | | tor-async-utils: Provide new SinkTrySend traitIan Jackson2024-10-012-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the method try_send from mpsc::channel::Sender. We want to be able to replace that type in tor-circmgr with a memquota wrapper, so the call needs to be a trait method. This API is deceptively simple. Implementing it will involve more support machinery for error handling.
| * | | | | tor-memquota: Provide TypedParticipation::try_claim_or_returnIan Jackson2024-10-011-1/+24
|/ / / / / | | | | | | | | | | | | | | | We're going to want this for try_send.
* | | | | Merge branch 'dyn-time' into 'main'Ian Jackson2024-10-0114-17/+380
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Provide a type-erased SleepProvider + CoarseTimeProvider and use it for memquota queues See merge request tpo/core/arti!2460
| * | | | | tor-rtcompat: dyn_time: Combine test cases into module (fmt)Ian Jackson2024-10-011-27/+28
| | | | | |
| * | | | | tor-rtcompat: dyn_time: Combine test cases into moduleIan Jackson2024-10-011-7/+24
| | | | | |
| * | | | | tor-rtcompat: Test case demonstrating downcast_value doesn't dropIan Jackson2024-10-011-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2460#note_3085583
| * | | | | tor-rtcompat: Comments about the implementation of downcast_valueIan Jackson2024-10-011-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2460#note_3085582
| * | | | | tor-rtcompat: Comments about tradeoffs in special casing PreferredRuntimeIan Jackson2024-10-011-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2460#note_3085581
| * | | | | tor-memquota: mq_queue: Provide Sender::time_provider accessorIan Jackson2024-09-261-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | Nothing uses this yet, but we will do so.
| * | | | | tor-memquota: Erase the CoarseTimeProvider from mq_queue::Sender (fmt)Ian Jackson2024-09-261-1/+6
| | | | | |
| * | | | | tor-memquota: Erase the CoarseTimeProvider from mq_queue::SenderIan Jackson2024-09-264-14/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use tor_rtcompat::DynTimeProvider instead. Ultimately, we're going to want one of these in Channel etc. The CoarseTimeProvider generic argument then becomes pervasive. Instead, erase it. This will involve an indirect function call each time an item is inserted. I think that can't be helped.
| * | | | | tor-rtcompat: Introduce DynTimeProviderIan Jackson2024-09-264-0/+237
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will replace the internal ad-hoc DynCoarseTimeProvider in tor-memquota. We need this to be public because it's going to be shared by many of our protocol elements (eg ClientCirc, Channel, etc.) as they need to use it for their mq queues.
| * | | | | tor-memquota: mq_queue: Take Account by referenceIan Jackson2024-09-262-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It doesn't need an owned value here. (clippy's note about this was defeated by this being a trait method.)
| * | | | | CI: run miri, currently on tor-rtcompatIan Jackson2024-09-268-3/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm about to add some unsafe which I want tested in CI. We must disable two tests.
* | | | | | Merge branch 'nightly-doc-warnings' into 'main'Nick Mathewson2024-10-012-3/+3
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | Fix a couple of lifetime warnings from nightly. See merge request tpo/core/arti!2478
| * | | | | Fix a couple of lifetime warnings from nightly.Nick Mathewson2024-10-012-3/+3
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nightly rustdoc, under some circumstances, issues a warning when you have an elided lifetime that matches a lifetime with a name. (It would prefer that you name the lifetime explicitly.) This does not change the actual lifetime of anything; it only makes some formerly elided lifetimes explicit.
* | | | | Merge branch 'warn_on_nonlocal' into 'main'Nick Mathewson2024-10-019-379/+475
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | Warn on nonlocal addresses in configuration, PT results See merge request tpo/core/arti!2454
| * | | | Mark resolve_listen_port as deprecated.Nick Mathewson2024-09-301-2/+9
| | | | |
| * | | | ptmgr: Forbid managed pts on non-localhostNick Mathewson2024-09-251-0/+7
| | | | |
| * | | | ptmgr: Warn on non-local unmanaged PTsNick Mathewson2024-09-252-0/+12
| | | | |
| * | | | arti: Warn when listening on non-loopback addresses.Nick Mathewson2024-09-252-0/+8
| | | | |
| * | | | tor-config: Add Listen::is_localhost_only.Nick Mathewson2024-09-251-0/+33
| | | | |
| * | | | tor-config: move Listen to its own module.Nick Mathewson2024-09-253-377/+402
| | | | |
| * | | | arti::cfg: Add a note to avoid new uses of a macro.Nick Mathewson2024-09-251-0/+4
| | | | |
* | | | | Merge branch 'misc' into 'main'Ian Jackson2024-10-014-5/+46
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Miscellaneous cleanups, mostly in tor-memquota See merge request tpo/core/arti!2461
| * | | | | tor-proto: Reformat a doc commentIan Jackson2024-09-261-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make it have a summary line of only reasonable size. While we're here, wrap the body with semantic linefeeds.
| * | | | | arti-client: Change the case of ErrorDetail::MemquotaSetup from MemQuotaSetupIan Jackson2024-09-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that my fingers want to treat "memquota" as a word. We have this in tor_memquota etc. too.
| * | | | | tor-memquota: Clarify that mq isn't the accountholderIan Jackson2024-09-261-0/+4
| | | | | |
| * | | | | tor-memquota: Provide Account::new_childIan Jackson2024-09-261-0/+15
| | | | | |
| * | | | | tor-memquota: provide Account::new_noopIan Jackson2024-09-261-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | This will be useful in tests.
| * | | | | tor-memquota: impl FusedStream for Receiver, where appropriateIan Jackson2024-09-261-0/+12
| |/ / / /
* | | | | Merge branch 'unused' into 'main'David Goulet2024-10-013-5/+8
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | Suppress some dead code warnings See merge request tpo/core/arti!2463
| * | | | tor-rtcompat: Suppress a dead code warningIan Jackson2024-09-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes cargo check --all-features -p tor-async-utils --all-targets which otherwise prints warning: function `new_unnamed_socketaddr` is never used --> crates/tor-rtcompat/src/unix.rs:14:15 | 14 | pub(crate) fn new_unnamed_socketaddr() -> std::io::Result<SocketAddr> { | ^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(dead_code)]` on by default
| * | | | tor-persist: Allow all dead code if not all features enabledIan Jackson2024-09-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes cargo check -p tor-circmgr --all-features --all-targets which otherwise prints warning: variant `InstanceState` is never constructed --> crates/tor-persist/src/err.rs:45:5 | 13 | pub(crate) enum Resource { | -------- variant in this enum ... 45 | InstanceState { | ^^^^^^^^^^^^^ | = note: `Resource` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis = note: `#[warn(dead_code)]` on by default warning: variants `Deleting` and `Enumerating` are never constructed --> crates/tor-persist/src/err.rs:66:5 | 57 | pub(crate) enum Action { | ------ variants in this enum ... 66 | Deleting, | ^^^^^^^^ ... 78 | Enumerating, | ^^^^^^^^^^^ | = note: `Action` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis warning: method `delete` is never used --> crates/tor-persist/src/load_store.rs:83:19 | 35 | impl Target<'_> { | --------------- method in this implementation ... 83 | pub(crate) fn delete(&self) -> Result<(), ErrorSource> { | ^^^^^^
| * | | | tor-proto: Allow all dead code if not all features enabledIan Jackson2024-09-301-5/+2
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes cargo check -p tor-chanmgr --all-features --all-targets which otherwise prints warning: method `reply` is never used --> crates/tor-proto/src/crypto/handshake.rs:73:8 | 65 | pub(crate) trait AuxDataReply<H> | ------------ method in this trait ... 73 | fn reply(&mut self, msg: &H::ClientAuxData) -> Option<H::ServerAuxData>; | ^^^^^ | = note: `#[warn(dead_code)]` on by default
* | | | Merge branch 'py-osx' into 'main'Nick Mathewson2024-09-301-2/+11
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Python: Use the correct library extension on osx, windows. See merge request tpo/core/arti!2469
| * | | | Python: Use the correct library extension on osx, windows.Nick Mathewson2024-09-301-2/+11
| | | | | | | | | | | | | | | | | | | | (The windows case is untested; the osx case worked fine.)
* | | | | Merge branch 'typed-index-approx' into 'main'Nick Mathewson2024-09-302-4/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Fix typed-index-collections versions to ~3.1.0 See merge request tpo/core/arti!2471
| * | | | | Fix typed-index-collections versions to ~3.1.0Nick Mathewson2024-09-302-4/+6
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using the tilde here tells cargo not to bump to 3.2.x, which would require Rust 1.81.0. I wish we could say "don't use 3.2.x unless you're on Rust 1.81", but I don't see an easy way. Leaving this as-is breaks our CI.
* | | | | Merge branch 'orport' into 'main'opara2024-09-3011-149/+1556
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-chanmgr: support multiple channels for a relay ID See merge request tpo/core/arti!2442
| * | | | | tor-chanmgr: support multiple channels for a relay IDSteven Engler2024-09-302-133/+292
| | | | | |
| * | | | | tor-linkspec: add `ListByRelayIds`Steven Engler2024-09-233-13/+478
| | | | | | | | | | | | | | | | | | | | | | | | Like `ByRelayIds`, but allows multiple items per relay ID.
| * | | | | tor-linkspec: impl `HasAddrs` for `&T`Steven Engler2024-09-231-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes the `HasAddrs` trait nicer to use when most things that have addresses are passed by reference anyways.