summaryrefslogtreecommitdiff
path: root/crates/arti-client/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge branch 'readmes' into 'main'Nick Mathewson2022-10-121-238/+1
|\ | | | | | | | | | | | | Abolish maint/readme and use doc include Closes #603 See merge request tpo/core/arti!768
| * cargo fmt to remove blank linesIan Jackson2022-10-121-1/+0
| | | | | | | | | | | | | | Apparently cargo fmt doesn't like these, which my perl rune didn't delete. This commit is precisely the result of `cargo fmt`.
| * Replace all README copies in src/lib.rs with includesIan Jackson2022-10-121-237/+1
| | | | | | | | | | | | | | | | The feature we want is `#[doc = include_str!("README.md")]`, which is stable since 1.54 and our MSRV is now 1.56. This commit is precisely the result of the following Perl rune: perl -i~ -0777 -pe 's{(^//!(?!.*\@\@).*\n)+}{#![doc = include_str!("../README.md")]\n}m' crates/*/src/lib.rs
* | struct BridgeConfig: Rename from BridgeIan Jackson2022-10-121-5/+5
|/ | | | Fixes #599
* pt and bridges: Parse configurationIan Jackson2022-10-121-0/+83
|
* Add pt-client and bridge-client features to arti and arti-clientIan Jackson2022-10-121-0/+2
|
* feature-gate some functions requiring PreferredRuntimetrinity-1686a2022-10-051-1/+10
|
* Merge branch 'hostname-validation' into 'main'Nick Mathewson2022-10-031-18/+1
|\ | | | | | | | | Use hostname-validator crate for hostname validation See merge request tpo/core/arti!739
| * Use hostname-validator crate for hostname validationReylaba2022-10-031-18/+1
| |
* | Merge branch 'fix-nightly-clippy' into 'main'Ian Jackson2022-09-221-0/+2
|\ \ | |/ |/| | | | | Fix nightly clippy See merge request tpo/core/arti!729
| * Apply 1 suggestion(s) to 1 file(s)Ian Jackson2022-09-221-1/+1
| |
| * fix clippy::needless_borrowtrinity-1686a2022-09-101-0/+2
| |
* | enumerate platform with getresuid supporttrinity-1686a2022-09-101-19/+19
|/
* READMEs: Drop stability warning re configIan Jackson2022-09-021-9/+0
| | | | | The referenced ticket is closed and I think the top-level caveats remaining after !717 are sufficient.
* arti-client README: Say we intend to provide FFIIan Jackson2022-09-021-1/+2
|
* READMEs: arti-client: Remove caveats and add some xrefsIan Jackson2022-09-021-7/+15
|
* Merge branch 'safelog_more' into 'main'Ian Jackson2022-08-262-4/+5
|\ | | | | | | | | Apply safelog to more of the things that we log See merge request tpo/core/arti!693
| * arti-client: Treat list of exit ports as sensitive.Nick Mathewson2022-08-252-3/+4
| |
| * arti-client: Downgrade "got a circuit for" message.Nick Mathewson2022-08-251-1/+1
| | | | | | | | | | | | This is not interesting to the user, and violates some of our safe-logging rules (like "Don't log at info for each user request" and "don't log ports").
* | arti: running_as_setuid: fix MacOs buildIan Jackson2022-08-261-2/+2
| | | | | | | | | | libc::getuid and geteuid are marked unsafe, even though I think they could be safe. So the previous code didn't build.
* | tor-config: Replace dir detection with ConfigurationSource enumIan Jackson2022-08-251-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/682#note_2830860 And subsequent IRC discussion. Having done the work as per review comments, I don't much like the result. It's quite un-ergonomiuc. If we can't have fs autodetection, I think syntactic autodetection within sources.rs would be nearly as nice. However, I seem to be outvoted. At least the externally visible functionality (of an arti binary, say) is reasonably ergonomic.
* | config sources: Read arti.d as well as arti.tomlIan Jackson2022-08-251-5/+10
|/ | | | Fixes #474 aka #271
* Fix setuid testing for MacOSIan Jackson2022-08-251-16/+42
|
* Merge branch 'no_setuid' into 'main'Nick Mathewson2022-08-242-0/+43
|\ | | | | | | | | arti_client: Refuse to build a client if we are setuid. See merge request tpo/core/arti!689
| * arti_client: Refuse to build a client if we are setuid.Nick Mathewson2022-08-242-0/+43
| | | | | | | | | | | | Arti is not designed to be a setuid-safe program. Part of #523.
* | add feature annotation not added by doc_auto_cfgtrinity-1686a2022-08-242-0/+2
| |
* | enable doc_auto_cfg feature on every crate when documenting for docs.rstrinity-1686a2022-08-241-0/+1
|/
* arti: Fix a minimal-versions failureIan Jackson2022-08-171-1/+1
|
* chanmgr: Use NetDirProvider::params and Arc<dyn..Netparameters>Ian Jackson2022-08-172-6/+7
| | | | | | | | | This gets rid of many Result(). Many parameters are renamed. Test cases of the now-impossible branch are removed. Deleting the match from padding_parameters will come in a moment. I've split off that commit since it has much whitespace noise. for now, change the error type to Void.
* Introduce ChannelConfigIan Jackson2022-08-162-1/+22
| | | | | This commit is just the necessary plumbing. The config is currently empty. We'll add something to it, for padding control, later.
* dormancy: Plumb through to chanmgr reconfigure_generalIan Jackson2022-08-161-4/+27
| | | | | | | | | | | | | | | The chanmgr remembers the last dormancy state it was told. We invent a chanmgr-specific Dormancy which the arti-client code knows how to convert from the richer top-level dormant status. This avoids having to have everyone know all the variants of the top-level state. To call reconfigure_general, we must also obtain and plumb through a netdir. Right now we must return an internal error if there is in fact no netdir, because reconfigure_general does not yet cope with a missing netdir. Nothing actually *uses* the dormancy yet.
* dormancy: tor-client: Break initial dormancy out into a variableIan Jackson2022-08-161-1/+2
| | | | | | We're going to need to reuse this, so we can plumb the dormancy to more places. Breaking it out avoids having repeat the initial dormancy value in two places.
* arti-client: TorClient constructor: add a blank lineIan Jackson2022-08-161-0/+1
| | | | | The rustfmt-mandated different formatting of these two very similar blocks is bad enough, without them being smooshed together.
* Document more explicitly what "voiding a semver warranty" entailsNick Mathewson2022-08-111-1/+5
| | | | Closes #522.
* Several typo fixes from `typos`.Nick Mathewson2022-07-271-1/+1
|
* Update arti-client to new NetDirProvider API.Nick Mathewson2022-07-262-6/+32
| | | | | | This allows us to give better errors in the case where bootstrapping succeeds at first, but fails thereafter for long enough to make our directory expire.
* Rename download_tolerance to directory_toleranceNick Mathewson2022-07-221-3/+8
| | | | Closes #503.
* Rename DirSkewTolerance to DirToleranceNick Mathewson2022-07-221-2/+2
| | | | | | This name is more accurate because we aren't only dealing with clock skew here: we're also trying to tolerate the case where the authorities fail to reach consensus for a while.
* arti-client: Split "Persist" into setup and access variants.Nick Mathewson2022-07-212-5/+16
|
* arti_client: turn "Proto" error into StreamFailed.Nick Mathewson2022-07-212-6/+22
|
* arti_client: Split DirMgr error into useful types.Nick Mathewson2022-07-213-6/+15
|
* arti-client: minor edits in error messages and commentsNick Mathewson2022-07-211-17/+20
|
* arti-client: Remove code related to overriding fs-mistrust.Nick Mathewson2022-07-193-45/+8
| | | | | | | | This logic can now be adjusted via the config object so that it does its own overriding by looking at the environment as appropriate. Removing these methods helps simplify the code a bit. Enabled by #483.
* Move responsibility for disable-fs-mistrust envvar.Nick Mathewson2022-07-192-33/+15
| | | | | | | The variable is now handled when building the configuration, and no longer needs to be special-cased. Closes #483.
* arti-client: Do periodic task dormancy in a management taskIan Jackson2022-07-181-37/+28
| | | | | This means that it is no longer possible to write code which updates the dormant mode but forgets to notify the periodic tasks.
* arti-client: Make dormant_mode be an Option, None on dropIan Jackson2022-07-181-13/+27
| | | | | This will allow receivers (which we are about to introduce) to terminate when the last client is dropped.
* arti-client: Convert dormant_mode into a postage::watchIan Jackson2022-07-181-17/+34
| | | | | | | | We are going to want to be able to wake up other tasks elsewhere in Arti, that need to know about dormancy. We will give them a postage watch Receiver. Right now there are no such things yet.
* arti-client: Make DormantMode have a DefaultIan Jackson2022-07-181-1/+3
|
* arti-client: Add Bug variant to errorIan Jackson2022-07-181-0/+5
| | | | We're going to want this in a moment.
* Fix typoDimitris Apostolou2022-06-281-1/+1
|