summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | rpc: Make names reflect configuration keys better.Nick Mathewson2024-12-191-17/+11
| | |
| * | rpc: Document that default-index is 1-basedNick Mathewson2024-12-192-1/+5
| | |
| * | Rename Guard=>ListenerGuard.Nick Mathewson2024-12-193-8/+8
| | |
| * | rpc: Add a comment to explain what load_options is doing.Nick Mathewson2024-12-191-0/+2
| | |
| * | rpc-connect: Explain locking rationale better.Nick Mathewson2024-12-191-3/+12
| | |
| * | rpc-connect: Use try_lock when acquiring fslockNick Mathewson2024-12-192-1/+9
| | | | | | | | | | | | | | | This lets us bail when another process has bound to our connect point, rather than blocking indefinitely.
| * | rpc: More logging when binding addressesNick Mathewson2024-12-192-1/+25
| | |
| * | arti::rpc: Refactor listener options to support defaults properlyNick Mathewson2024-12-191-31/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want to have every option that applies to a connect point (other than file or dir) exist both as a default version, and as a per-file override. This approach lets us do so: We store _builders_ for these options in the config, and then use ExtendBuilder to merge them together. (There aren't yet any options other than 'enable', but there will be before long.)
| * | arti::rpc: Rename "overrides" field and type.Nick Mathewson2024-12-191-18/+17
| | | | | | | | | | | | | | | Per discussion with Diziet, these aren't really "overriding" anything; they're the actual options for a single connect point.
| * | arti: Use connect points to listen for RPC connections.Nick Mathewson2024-12-194-88/+331
| | |
| * | arti: Disable RPC reconfiguration for nowNick Mathewson2024-12-192-1/+5
| | |
| * | rpc: Configuration options for artiNick Mathewson2024-12-193-2/+159
| | | | | | | | | | | | | | | | | | This adds the options currently specified in rpc-connect-point.rs, though they don't do anything yet. We still have to implement the correct defaulting behavior.
| * | arti: Move RpcConfig to rpc.rsNick Mathewson2024-12-192-29/+33
| | |
| * | map_builder: Add support for default settings.Nick Mathewson2024-12-191-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 Mathewson2024-12-192-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 Mathewson2024-12-192-0/+180
| | | | | | | | | | | | We'll use this to implement defaults for maps in our configuration.
| * | connpt: Make unix socket handling more robust.Nick Mathewson2024-12-194-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 Mathewson2024-12-192-1/+3
| | |
| * | rpc-connect: fix another very typoed lineNick Mathewson2024-12-191-1/+1
| | |
| * | list_builder: fix a very typoed line.Nick Mathewson2024-12-191-1/+1
| | |
| * | rtcompat: re-export items from tor_general_addr::generalNick Mathewson2024-12-191-0/+2
| | |
| * | tor-general-addr: Add general::SocketAddr::as_pathname()Nick Mathewson2024-12-191-0/+9
| | |
* | | fs-mistrust: trim whitespace in env var valuesSteven Engler2024-12-182-4/+8
|/ /
* | fs-mistrust: commit to stable env var handlingSteven Engler2024-12-182-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 valuesSteven Engler2024-12-181-2/+2
| |
* | Merge branch 'reverse-hscrypto-key-forge-dep' into 'main'David Goulet2024-12-124-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 Moldovan2024-12-114-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 Mathewson2024-12-121-1/+1
| |
* | Merge branch 'cbindgen-label' into 'main'Nick Mathewson2024-12-111-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 Mathewson2024-12-091-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 Engler2024-12-101-6/+10
| |
* | tor-proto: add some (disabled) doc testsSteven Engler2024-12-101-0/+27
| |
* | tor-proto: moved `Shared::count_wakers` into 'test' modSteven Engler2024-12-101-13/+12
| |
* | tor-proto: changed an `expect` to a `debug_assert`Steven Engler2024-12-101-5/+4
| |
* | tor-proto: use thiserror for `SenderDropped`Steven Engler2024-12-101-9/+2
| |
* | tor-proto: use `ready!` instead of `match`Steven Engler2024-12-101-5/+3
| |
* | tor-proto: `borrowed()` now explicitly returns a `BorrowedReceiverFuture`Steven Engler2024-12-101-3/+2
| |
* | tor-proto: improve commentsSteven Engler2024-12-101-15/+31
| |
* | Revert "tor-proto: implement `FusedFuture` for receiver futures"Steven Engler2024-12-101-57/+10
| | | | | | | | This reverts commit d73f8894551d37e3bc36947eccf0c6007ffc066e.
* | tor-proto: implement `FusedFuture` for receiver futuresSteven Engler2024-12-101-10/+57
| |
* | Revert "tor-proto: deduplicate future fields into `FutureState`"Steven Engler2024-12-101-18/+11
| | | | | | | | This reverts commit acc79ffb44343e52ecb72e27ee8843a63448ff5a.
* | Revert "tor-proto: implement `FusedFuture` for receiver futures"Steven Engler2024-12-101-79/+33
| | | | | | | | This reverts commit 2fd105b79c25d919e32e53daf81cb369d1e44331.
* | tor-proto: implement `FusedFuture` for receiver futuresSteven Engler2024-12-101-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 Engler2024-12-101-11/+18
| |
* | tor-proto: renamed `ReceiverBorrowedFuture` to `BorrowedReceiverFuture`Steven Engler2024-12-101-5/+5
| |
* | tor-proto: renamed `ReceiverOwnedFuture` to `ReceiverFuture`Steven Engler2024-12-101-6/+6
| |
* | tor-proto: rename `Receiver::recv` to `borrowed`Steven Engler2024-12-101-24/+24
| |
* | tor-proto: moved the `Weak::upgrade` into `Sender::send_and_wake`Steven Engler2024-12-101-22/+15
| |
* | tor-proto: changed `wakers` from an `Option<_>` to a `Result<_, ↵Steven Engler2024-12-101-9/+21
| | | | | | | | WakersAlreadyWoken>`
* | tor-proto: added `use std::ops::Drop`Steven Engler2024-12-101-3/+4
| |