aboutsummaryrefslogtreecommitdiff
path: root/crates/arti/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | http_connect: write our own hyper-futures replacementNick Mathewson2025-10-281-4/+77
| |
* | http_connect: Forbid non-empty OPTIONS bodies.Nick Mathewson2025-10-281-0/+8
| |
* | http_connect: validate casei behavior of HeaderMap.Nick Mathewson2025-10-281-0/+36
| |
* | proxy: Revise rpc docs so they are not SOCKS-specificNick Mathewson2025-10-281-14/+20
| |
* | http_connect: Advertise listener capabilities to RPCNick Mathewson2025-10-282-7/+25
| |
* | http_connect: Declare that error messages are text/plain.Nick Mathewson2025-10-281-1/+1
| |
* | http_connect: Reject OPTIONS requests with bodiesNick Mathewson2025-10-281-2/+11
| |
* | http_connect: Implement stream isolationNick Mathewson2025-10-282-4/+82
| |
* | http_connect: implement rpc supportNick Mathewson2025-10-281-6/+76
| |
* | http-connect: Implement X-Tor-Family-PreferenceNick Mathewson2025-10-281-5/+79
| |
* | http_connect: Use consts for headers.Nick Mathewson2025-10-281-4/+16
| |
* | http_connect: Generate an X-Tor-Request-Failed header.Nick Mathewson2025-10-281-2/+20
| |
* | http_connect: Provide better status codes for ErrorKinds.Nick Mathewson2025-10-282-4/+77
| |
* | arti: Implement a "bilingual" HTTP CONNECT proxy.Nick Mathewson2025-10-283-1/+328
| | | | | | | | | | | | | | | | | | | | | | With his commit, our SOCKS ports now accept both SOCKS and HTTP CONNECT requests, per proposal 365. There are still some infelicities, marked with "XXXX" or "TODO". I've tested this with curl, though, and it works. :) Typo-fixes-by: Gabriela Moldovan <[email protected]>
* | arti: Detect proxy protocol _before_ starting SOCKS.Nick Mathewson2025-10-283-26/+86
| | | | | | | | | | This will let us speak HTTP CONNECT as well; there is a stub for initiating an http proxy.
* | arti: Pass a buffered stream to handle_socks_connNick Mathewson2025-10-282-3/+15
| | | | | | | | This will let us implement bilingual HTTP proxies.
* | arti: Renaming around socks/generic proxiesNick Mathewson2025-10-283-40/+43
| | | | | | | | This is _all_ renaming and comment adjustments.
* | arti: Split socks-specific parts out of handle_socks_connNick Mathewson2025-10-282-448/+475
| | | | | | | | | | | | | | | | | | We want to abstract every part of this code that knows that it's speaking SOCKS, so that we can in turn add a new proxy type. Note that several methods and types here have names that are no longer appropriate for their functionality. I'll revise those in a later commit.
* | arti::proxy: Small reformats.Nick Mathewson2025-10-281-5/+7
| | | | | | | | | | (I'm not sure why this wasn't already done, but let's do it as a separate MR.)
* | Rename "arti::socks" to "arti::proxy".Nick Mathewson2025-10-283-3/+3
|/ | | | I'm about to add another proxy type.
* arti: Ignore reload_cfg::test::watch_multiple.Wesley Aptekar-Cassels2025-10-161-0/+2
| | | | This is flaky, ignoring until #1607 is fixed.
* Merge branch 'fix-watch-single-file-flake' into 'main'wesleyac2025-10-161-3/+5
|\ | | | | | | | | | | | | arti config: Fix flaky watch_single_file test. Closes #1607 See merge request tpo/core/arti!2503
| * arti config: Fix flaky watch_single_file test in a more principled way.Wesley Aptekar-Cassels2025-10-071-12/+4
| | | | | | | | Thanks to gabi for the suggestion.
| * arti config: Fix flaky watch_single_file test.Wesley Aptekar-Cassels2025-10-071-2/+12
| | | | | | | | Fixes: #1607
* | arti: keys: Simplify `run_check_integrity`hjrgrn2025-10-081-9/+7
| |
* | arti: keys: Improve readability of `print_check_integrity_incipit`hjrgrn2025-10-081-11/+7
| |
* | arti: keys: Fix typo in `run_check_integrity`hjrgrn2025-10-081-1/+1
| |
* | arti: keys: Rename `invalid_entry` to `expired_entry` in `run_check_integrity`hjrgrn2025-10-081-3/+3
| |
* | arti: keys: Add warning for unexpected invalid keystore entryhjrgrn2025-10-081-14/+16
| |
* | arti: keys: Improve readability of `run_check_integrity`hjrgrn2025-10-081-5/+4
| |
* | arti: keys: Add comment explaining why `services` cannot be droppedhjrgrn2025-10-081-0/+2
| |
* | arti: keys: Add comment explaining difference between `affected_keystores` ↵hjrgrn2025-10-081-0/+5
| | | | | | | | and `keystores`
* | arti: keys: Refactor `get_expired_keys`hjrgrn2025-10-081-9/+6
| | | | | | | | The function now returns `Result<Vec<InvalidKeystoreEntry<'a>>>`
* | arti: keys: Add integrity check for empty expired_entrieshjrgrn2025-10-081-0/+14
| | | | | | | | | | | | | | Add a check in `run_check_integrity` to verify that the `expired_entries` collection is empty after processing all registered keystores. This should always be true, as all expired entries are expected to be removed during iteration. If not, it indicates a bug.
* | arti: keys: Introduce InvalidKeystoreEntry and InvalidKeystoreEntries structshjrgrn2025-10-081-33/+74
| | | | | | | | | | Replace raw tuples with named structs to reduce type complexity and improve code clarity and maintainability.
* | arti: keys: Remove `filter` in favor of `retain` in `run_check_integrity`hjrgrn2025-10-081-11/+9
| |
* | arti: keys: Add comment explaining expired entry handling in ↵hjrgrn2025-10-081-0/+2
| | | | | | | | `run_check_integrity`
* | arti: keys: Improve `run_check_integrity` functionhjrgrn2025-10-081-11/+23
| | | | | | | | | | | | - Fix bug where expired keys from one keystore were incorrectly associated with all keystores - Remove unnecessary clone
* | arti: keys: Adapt `maybe_remove_invalid_entries` to updated ↵hjrgrn2025-10-081-14/+19
| | | | | | | | `run_check_integrity`
* | arti: keys: Refactor function `display_invalid_keystore_entries`hjrgrn2025-10-081-32/+40
| | | | | | | | | | | | - Add `display_invalid_keystore_entries` helper function `print_check_integrity_incipit` - Add `display_invalid_keystore_entries` comment
* | arti: keys: Implement `display_invalid_keystore_entries`hjrgrn2025-10-081-2/+39
| | | | | | | | | | | | Add initial functional implementation of `display_invalid_keystore_entries`, which processes a list of invalid keystore entries grouped by `KeystoreId` and displays them with associated error messages.
* | arti: keys: Refactor `display_invalid_keystore_entries`hjrgrn2025-10-081-35/+38
| | | | | | | | | | | | | | | | | | | | Create the skeletal version of the new `display_invalid_keystore_entries` function and adapt `run_check_integrity` to use it. The function now takes a slice of pairs, each containing a `KeystoreId` and a vector of invalid keystore entries along with their error messages, and processes all entries internally by iterating over each keystore, instead of being called once per keystore.
* | arti: keys: Refactor run_check_integrity to use keystores with IDshjrgrn2025-10-081-28/+37
|/ | | | | | | | | Previously, the function worked with a flat `Vec<KeystoreEntryResult<KeystoreEntry>>`. Now, it uses a structured `Vec<(KeystoreId, Vec<KeystoreEntryResult<KeystoreEntry>>)>`, grouping entries by keystore. This makes it easier to track which keystore each entry belongs to, and prepares the code for upcoming improvements.
* Remove "doc_auto_cfg" incantation from all crates.Nick Mathewson2025-09-291-1/+1
| | | | This feature has been removed from nightly, in favor of doc_cfg.
* arti: Add skip_all to instrument call.Wesley Aptekar-Cassels2025-09-241-1/+1
|
* arti: Make panic into error on invalid OTEL endpoint.Wesley Aptekar-Cassels2025-09-241-3/+5
|
* arti: Add note about OpenTelemetry data model.Wesley Aptekar-Cassels2025-09-241-0/+3
|
* arti: Add note about lack of filtering in OpenTelemetry layer.Wesley Aptekar-Cassels2025-09-241-0/+3
|
* arti: Add skip_all to instrument macro.Wesley Aptekar-Cassels2025-09-241-1/+1
| | | | | | It's unlikely these arguments will be particularly useful, and omitting skip_all can have security implications, so it's better to avoid it to reflect good practice.
* arti: Add more detail about OpenTelemetry in example config.Wesley Aptekar-Cassels2025-09-241-2/+9
|