| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | | arti: Move RpcConfig to rpc.rs | Nick Mathewson | 2024-12-19 | 2 | -29/+33 | |
| | | | | ||||||
| | * | | map_builder: Add support for default settings. | Nick Mathewson | 2024-12-19 | 1 | -10/+133 | |
| | | | | | | | | | | | | | | | | | | | This is a little tricky (beyond the usual macro fun) because we needed to use ExtendBuilder to get reasonable behavior for our default trees. | |||||
| | * | | Define macros to create a map-builder type. | Nick Mathewson | 2024-12-19 | 2 | -0/+216 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're about to need this to define some of the configuration for RPC listeners. The provided map-builder type is much less voluminous in terms of APIs added than the list-builder type: It just uses Deref* and sub_builder. I think this simplicity may be a win. I'll need to rethink how this type handles defaults in order to implement connect points properly; I've left XXXXs for that issue. | |||||
| | * | | tor-config: Add "extend" functionality for config builders. | Nick Mathewson | 2024-12-19 | 2 | -0/+180 | |
| | | | | | | | | | | | | | We'll use this to implement defaults for maps in our configuration. | |||||
| | * | | connpt: Make unix socket handling more robust. | Nick Mathewson | 2024-12-19 | 4 | -21/+70 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Grab an associated lock file... - ... then delete the socket file (if it's present) ... - ... then bind to it. On exit: - remove the socket - then drop the lock. | |||||
| | * | | rpc-connect: Make LoadOptions buildable. | Nick Mathewson | 2024-12-19 | 2 | -1/+3 | |
| | | | | ||||||
| | * | | rpc-connect: fix another very typoed line | Nick Mathewson | 2024-12-19 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | list_builder: fix a very typoed line. | Nick Mathewson | 2024-12-19 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | rtcompat: re-export items from tor_general_addr::general | Nick Mathewson | 2024-12-19 | 1 | -0/+2 | |
| | | | | ||||||
| | * | | tor-general-addr: Add general::SocketAddr::as_pathname() | Nick Mathewson | 2024-12-19 | 1 | -0/+9 | |
| | | | | ||||||
| * | | | fs-mistrust: trim whitespace in env var values | Steven Engler | 2024-12-18 | 2 | -4/+8 | |
| |/ / | ||||||
| * | | fs-mistrust: commit to stable env var handling | Steven Engler | 2024-12-18 | 2 | -4/+43 | |
| | | | | | | | | | | | | | | | | | Since these environment variables become part of the stable API for applications that use fs-mistrust, we should be explicit about how these environment variables are interpreted so that applications can show the values in their documentation or help text, and so that we don't accidentally change the behaviour and break applications. | |||||
| * | | fs-mistrust: (docs) fix incomplete list of env variable values | Steven Engler | 2024-12-18 | 1 | -2/+2 | |
| | | | ||||||
| * | | Merge branch 'reverse-hscrypto-key-forge-dep' into 'main' | David Goulet | 2024-12-12 | 4 | -114/+112 | |
| |\ \ | | | | | | | | | | | | | | | | | | | tor-hscrypto: Move encodable key trait impls from tor-key-forge. Closes #1778 See merge request tpo/core/arti!2668 | |||||
| | * | | tor-hscrypto: Move encodable key trait impls from tor-key-forge. | Gabriela Moldovan | 2024-12-11 | 4 | -114/+112 | |
| | |/ | | | | | | | | | | | | | | | | | This enables us to get rid of the tor-key-forge -> tor-hscrypto dependency, partially addressing the TODO from `tor_key_forge::traits`. This commit is mostly code motion. Best reviewed with `--color-moved`. See also #1778 | |||||
| * | | streamops: Resolve unused-variable warnings. | Nick Mathewson | 2024-12-12 | 1 | -1/+1 | |
| | | | ||||||
| * | | Merge branch 'cbindgen-label' into 'main' | Nick Mathewson | 2024-12-11 | 1 | -0/+1 | |
| |\ \ | |/ |/| | | | | | | | | | Label our cbindgen output, to detect version incompatibility. Closes #1772 See merge request tpo/core/arti!2662 | |||||
| | * | Label our cbindgen output, to detect version incompatibility. | Nick Mathewson | 2024-12-09 | 1 | -0/+1 | |
| | | | | | | | | | | | | | | | This will help us keep track of whether we are using the pinned-to version of cbindgen. Closes #1772. | |||||
| * | | tor-proto: replaced error type of `Sender::send_and_wake` | Steven Engler | 2024-12-10 | 1 | -6/+10 | |
| | | | ||||||
| * | | tor-proto: add some (disabled) doc tests | Steven Engler | 2024-12-10 | 1 | -0/+27 | |
| | | | ||||||
| * | | tor-proto: moved `Shared::count_wakers` into 'test' mod | Steven Engler | 2024-12-10 | 1 | -13/+12 | |
| | | | ||||||
| * | | tor-proto: changed an `expect` to a `debug_assert` | Steven Engler | 2024-12-10 | 1 | -5/+4 | |
| | | | ||||||
| * | | tor-proto: use thiserror for `SenderDropped` | Steven Engler | 2024-12-10 | 1 | -9/+2 | |
| | | | ||||||
| * | | tor-proto: use `ready!` instead of `match` | Steven Engler | 2024-12-10 | 1 | -5/+3 | |
| | | | ||||||
| * | | tor-proto: `borrowed()` now explicitly returns a `BorrowedReceiverFuture` | Steven Engler | 2024-12-10 | 1 | -3/+2 | |
| | | | ||||||
| * | | tor-proto: improve comments | Steven Engler | 2024-12-10 | 1 | -15/+31 | |
| | | | ||||||
| * | | Revert "tor-proto: implement `FusedFuture` for receiver futures" | Steven Engler | 2024-12-10 | 1 | -57/+10 | |
| | | | | | | | | | This reverts commit d73f8894551d37e3bc36947eccf0c6007ffc066e. | |||||
| * | | tor-proto: implement `FusedFuture` for receiver futures | Steven Engler | 2024-12-10 | 1 | -10/+57 | |
| | | | ||||||
| * | | Revert "tor-proto: deduplicate future fields into `FutureState`" | Steven Engler | 2024-12-10 | 1 | -18/+11 | |
| | | | | | | | | | This reverts commit acc79ffb44343e52ecb72e27ee8843a63448ff5a. | |||||
| * | | Revert "tor-proto: implement `FusedFuture` for receiver futures" | Steven Engler | 2024-12-10 | 1 | -79/+33 | |
| | | | | | | | | | This reverts commit 2fd105b79c25d919e32e53daf81cb369d1e44331. | |||||
| * | | tor-proto: implement `FusedFuture` for receiver futures | Steven Engler | 2024-12-10 | 1 | -33/+79 | |
| | | | | | | | | | | | | | | | | | I considered just using `FutureExt::fuse`, but that becomes a little annoying since the future type is exposed through `IntoFuture::IntoFuture`, which means `ReceiverFuture` would need to wrap a `Fuse`. I figured it's cleaner just to implement the trait directly. | |||||
| * | | tor-proto: deduplicate future fields into `FutureState` | Steven Engler | 2024-12-10 | 1 | -11/+18 | |
| | | | ||||||
| * | | tor-proto: renamed `ReceiverBorrowedFuture` to `BorrowedReceiverFuture` | Steven Engler | 2024-12-10 | 1 | -5/+5 | |
| | | | ||||||
| * | | tor-proto: renamed `ReceiverOwnedFuture` to `ReceiverFuture` | Steven Engler | 2024-12-10 | 1 | -6/+6 | |
| | | | ||||||
| * | | tor-proto: rename `Receiver::recv` to `borrowed` | Steven Engler | 2024-12-10 | 1 | -24/+24 | |
| | | | ||||||
| * | | tor-proto: moved the `Weak::upgrade` into `Sender::send_and_wake` | Steven Engler | 2024-12-10 | 1 | -22/+15 | |
| | | | ||||||
| * | | tor-proto: changed `wakers` from an `Option<_>` to a `Result<_, ↵ | Steven Engler | 2024-12-10 | 1 | -9/+21 | |
| | | | | | | | | | WakersAlreadyWoken>` | |||||
| * | | tor-proto: added `use std::ops::Drop` | Steven Engler | 2024-12-10 | 1 | -3/+4 | |
| | | | ||||||
| * | | tor-proto: removed `Receiver::recv_clone` and implemented `IntoFuture` for ↵ | Steven Engler | 2024-12-10 | 2 | -25/+24 | |
| | | | | | | | | | `Receiver` | |||||
| * | | tor-proto: renamed `CancelledError` to `SenderDropped` | Steven Engler | 2024-12-10 | 1 | -17/+17 | |
| | | | ||||||
| * | | tor-proto: switched from `Slab` to `DenseSlotMap` for waker map | Steven Engler | 2024-12-10 | 2 | -11/+13 | |
| | | | ||||||
| * | | tor-proto: change the message type from `Option<T>` to `Result<T, ↵ | Steven Engler | 2024-12-10 | 1 | -9/+12 | |
| | | | | | | | | | CancelledError>` | |||||
| * | | tor-proto: changed regular comments on `Shared` to doc comments | Steven Engler | 2024-12-10 | 1 | -21/+21 | |
| | | | ||||||
| * | | tor-proto: update docs on `Channel::reactor_closed_rx` | Steven Engler | 2024-12-10 | 1 | -3/+1 | |
| | | | | | | | | | | | This is no longer applicable with the new oneshot broadcast channel design. | |||||
| * | | tor-proto: replace oneshot broadcast channel | Steven Engler | 2024-12-10 | 3 | -138/+563 | |
| | | | | | | | | | | | The old version had some issues, so this is a rewrite which uses slightly lower level synchronization types (`Mutex` and `OnceLock`). | |||||
| * | | tor-proto: replace `Channel`s "closed" state handling | Steven Engler | 2024-12-10 | 2 | -35/+47 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously `Channel` had two concepts of "closed". There was an atomic flag that was set to `true` at the end `Reactor::run`, and an experimental oneshot channel where the sender was dropped when the reactor was dropped. This commit consolidates these two using the `oneshot_broadcast` module. This means that the behaviour is consistent between both "closed" statuses (`is_closing()` and `wait_for_close()`). A channel is considered closed when its reactor is dropped. This also helps progress towards making the channel reactor cancellation safe (see arti#1756). | |||||
| * | | tor-proto: move `ChannelDetails::reactor_closed_rx` to `Channel` | Steven Engler | 2024-12-10 | 1 | -11/+17 | |
| | | | | | | | | | This doesn't need to be shared with the reactor. | |||||
| * | | tor-proto: add 'oneshot_broadcast' util module | Steven Engler | 2024-12-10 | 2 | -0/+246 | |
| | | | ||||||
| * | | tor-key-forge: Abolish the HasKind impl of Error. | Gabriela Moldovan | 2024-12-10 | 2 | -14/+1 | |
| | | | | | | | | | | | | | | | We can't possibly know the `ErrorKind` of such an error, unless we know where the unsupported key came from. Since we can't know this, we should let a higher level crate (like `tor-keymgr`) decide the `ErrorKind` instead. | |||||
| * | | tor-rtcompat: Replace bad_api_usage with UnsupportedStreamOp (fmt). | Gabriela Moldovan | 2024-12-10 | 4 | -6/+21 | |
| | | | ||||||
