| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Generated with
```
cargo set-version --bump patchlevel -p arti
```
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Per our policy, every one of these gets a minor bump.
Generated with:
```
for crate in $(./maint/list_crates | grep '^\(tor\|arti\)-' ); do
cargo set-version --bump minor -p $crate;
done
```
(Note the use of `-` at the end end of the grep pattern to prevent
matching the `arti` crate.)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These crates are not in the tor/arti namespace,
but we have given them MSRV bumps:
```
oneshot-fused-workaround
slotmap-careful
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
test-temp-dir
retry-error
```
We are counting this as a breaking change.
Since all of these crates are at 0.x.x,
we have indicated the breaking change with a minor version bump.
This commit was generated with the following script:
```
BUMPS="
oneshot-fused-workaround
slotmap-careful
fslock-guard
hashx
equix
caret
fs-mistrust
safelog
test-temp-dir
retry-error
"
for crate in $BUMPS; do
cargo set-version --bump minor -p $crate;
done
```
|
| |\
| |
| |
| |
| | |
arti: add an example for onion service "reject" option
See merge request tpo/core/arti!2458
|
| | |
| |
| |
| | |
There was previously no example here.
|
| |\ \
| | |
| | |
| | |
| | | |
arti: move 'relay' subcommand to 'subcommands::relay' module
See merge request tpo/core/arti!2455
|
| | | | |
|
| |\ \ \
| |_|/
|/| |
| | |
| | | |
Upgrade MSRV to 1.77 , and rusqlite to 0.32.1
See merge request tpo/core/arti!2451
|
| | | |
| | |
| | |
| | | |
This will allow us to upgrade to the latest version of rusqlite.
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
Upgrade dependencies in preparation for next week's releases.
See merge request tpo/core/arti!2450
|
| | |/
| |
| |
| |
| |
| | |
The `derive_more` crate broke backward compatibility with this version,
so this change involved quite a few manual fixups.
With luck, they'll keep compatibility for some while in the future.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
When calling copy_within, we want to copy the amount of data that
we're keeping; previously, we were copying an extra `action.drain`
bytes, which could have led to a panic.
Spotted by Opara.
|
| |/
|
|
|
|
|
|
|
| |
Without this check, our socks code can enter an infinite loop
if a socket is closed at the wrong time.
Resolves TROVE-2024-011.
Fixes #1635.
|
| |\
| |
| |
| |
| | |
socks: Implement proposal 351.
See merge request tpo/core/arti!2401
|
| | | |
|
| | |
| |
| |
| | |
Introduce an enum, and use explicit `format_code @` syntax.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
(These streams would already be isolated by accident, since streams
with an RPC object are always on a client that's isolated from the
main client. But, as discussed on torspec!280, it's best to do this
sort of thing explicitly.)
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
The current best source here is prop351,
and later will be socks-extensions.md.
The examples are now correct.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
See https://spec.torproject.org/proposals/351-socks-auth-extensions.html
This proposal changes the interpretation of SOCKS5
usernames/passwords to give a more principled and extensible way of
getting RPC IDs and isolation strings.
|
| |\ \
| | |
| | |
| | |
| | | |
arti SOCKS proxy: Tear down connections when client sends optimistic data
See merge request tpo/core/arti!2443
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We *do* want to support optimistic data, see
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2436#note_3081886
However, right now, Arti risks mis-framing bugs if clients do send
optimistic data, which would be quite serious.
Mitigates #1627 / TROVE-2024-010 by replacing the misframing bug with
connection failure.
It doesn't seem so easy to write a test case for this.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
When specifying a delegation, the template user must also say what
type they're delegating to.
We're going to use this to document and expose delegations.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
rtcompat: Second attempt at AF_UNIX support
Closes #1152
See merge request tpo/core/arti!2437
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
(And similarly rename TcpListener to NetStreamListener,
along with their TcpStream/TcpListener associated types.)
These types are about to become generic over addresses,
and therefore shouldn't be named after TCP.
Renaming was done mostly with Rust Analyzer,
except for some macros that needed to be hand-edited.
(I'll revise the comments in the next commit;
this one is all about renaming.)
|
| | | | | |
|
| |/ / /
| | |
| | |
| | |
| | | |
The keystore settings only configure the *primary* keystore, so they
should be under `keystore.primary`.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previously, arti's primary keystore was referred to as its "default"
keystore. However, "default" is inaccurate here: there is no way to
meaningfully override this "default" (the "default" store acts as the
main keystore). Throughout the codebase, we query all keystores for keys
(including the secondary ones), but only ever write to the
default/primary keystore. This is OK for now, because it enables us to
have one mutable keystore, and multiple secondary, read-only stores.
|
| |/ / |
|
| | |
| |
| |
| | |
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2435#note_3080452
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
This new feature is experimental.
|
| | | |
|
| | |
| |
| |
| | |
Closes #1475
|
| | |
| |
| |
| | |
Part of #1475
|
| | |
| |
| |
| |
| | |
This will be reused for `arti hsc key rotate`, which also outputs
the public key.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I am deprecating the old `hsc get-key` subcommand in favor of the new
`hsc key get` subcommand. This is because I plan to implement the rest
of the key management functionality (key deletion, rotation, etc.) as
subcommands of the `hsc key` command. The alternative would be to add a
new distinct top-level `hsc rotate-key`, `hsc remove-key`, etc.
subcommand alongside the existing `hsc get-key` command (which IMO is
less nice than the alternative I'm proposing).
|
| | |
| |
| |
| | |
These will be reused by a future `key rotate` subcommand.
|
| | |
| |
| |
| |
| | |
Otherwise, if/when we add support for other `KeyType`s we risk
forgetting to update the rest of the implementation.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
The client will be used by future subcommands too, not just
`prepare_service_discovery_key`.
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
arti: Allow running hidden services with SOCKS/DNS proxying disabled.
Closes #1569
See merge request tpo/core/arti!2423
|
| | | |
| | |
| | |
| | | |
If `socks_listen` is disabled, we're not actually running in SOCKS mode.
|
| | | |
| | |
| | |
| | | |
Closes #1569
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Bump MSRV from 1.70 to 1.75.
See merge request tpo/core/arti!2421
|