| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
| | |
| | |
| | |
| | | |
1.1.11 and 1.1.12 were yanked, apparently for accidental semver
breaks.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Hopefully non-controversial parts of RPC configuration prep work
Closes #2532
See merge request tpo/core/arti!3979
|
| | | |/
| |/| |
|
| | | |
| | |
| | |
| | | |
The previous version (0.24.5) has been yanked.
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the circ-padding feature is enabled, we use maybenot, which does
not yet support rand 0.10. In the meantime, enabling this feature pulls
in rand 0.9. This is not ideal, but should be okay as a temporary
situation.
This also replaces the use of ReseedingRng (which was removed in 0.10)
with the reseeding_rng crate. This is somewhat less performant, but it
should be okay.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This crate is a generalization of the logic for uploading we
currently have in tor-hsservice to handle uploading a (possibly
changing) document to a (possibly changing) list of targets.
It supports different kinds of documents, different kinds of
document targets, and different ways to upload.
Currently only direct HTTP uploads are supported;
we can add others in the future (and we'll have to,
for bridges and onion services.)
Closes #2499.
|
| |\ \
| | |
| | |
| | |
| | | |
Update code to actually eliminate fslock *and* the LockFile type.
See merge request tpo/core/arti!3954
|
| | | |
| | |
| | |
| | |
| | | |
We can do this since our msrv is now 1.89.0, where
File::lock is supported.
|
| | |/
| |
| |
| |
| |
| | |
There were two that relied on the the ability to have a lock
in an unlocked state. Instead, we replace those with
Option<LockFileGuard> or its equivalent.
|
| |/
|
|
| |
Bring in non-breaking changes to our dependencies.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cargo set-version -p arti-client 0.42.0
cargo set-version -p arti-config 0.42.0
cargo set-version -p arti-relay 0.42.0
cargo set-version -p arti-rpc-client-core 0.42.0
cargo set-version -p arti-rpcserver 0.42.0
cargo set-version -p arti-testing 0.42.0
cargo set-version -p arti-ureq 0.42.0
cargo set-version -p tor-async-utils 0.42.0
cargo set-version -p tor-basic-utils 0.42.0
cargo set-version -p tor-bytes 0.42.0
cargo set-version -p tor-cell 0.42.0
cargo set-version -p tor-cert 0.42.0
cargo set-version -p tor-cert-x509 0.42.0
cargo set-version -p tor-chanmgr 0.42.0
cargo set-version -p tor-checkable 0.42.0
cargo set-version -p tor-circmgr 0.42.0
cargo set-version -p tor-config 0.42.0
cargo set-version -p tor-config-path 0.42.0
cargo set-version -p tor-consdiff 0.42.0
cargo set-version -p tor-dirclient 0.42.0
cargo set-version -p tor-dircommon 0.42.0
cargo set-version -p tor-dirmgr 0.42.0
cargo set-version -p tor-dirserver 0.42.0
cargo set-version -p tor-error 0.42.0
cargo set-version -p tor-events 0.42.0
cargo set-version -p tor-general-addr 0.42.0
cargo set-version -p tor-geoip 0.42.0
cargo set-version -p tor-guardmgr 0.42.0
cargo set-version -p tor-hsclient 0.42.0
cargo set-version -p tor-hscrypto 0.42.0
cargo set-version -p tor-hsrproxy 0.42.0
cargo set-version -p tor-hsservice 0.42.0
cargo set-version -p tor-key-forge 0.42.0
cargo set-version -p tor-keymgr 0.42.0
cargo set-version -p tor-linkspec 0.42.0
cargo set-version -p tor-llcrypto 0.42.0
cargo set-version -p tor-log-ratelim 0.42.0
cargo set-version -p tor-memquota 0.42.0
cargo set-version -p tor-memquota-cost 0.42.0
cargo set-version -p tor-netdir 0.42.0
cargo set-version -p tor-netdoc 0.42.0
cargo set-version -p tor-persist 0.42.0
cargo set-version -p tor-proto 0.42.0
cargo set-version -p tor-protover 0.42.0
cargo set-version -p tor-ptmgr 0.42.0
cargo set-version -p tor-relay-crypto 0.42.0
cargo set-version -p tor-relay-selection 0.42.0
cargo set-version -p tor-rpcbase 0.42.0
cargo set-version -p tor-rpc-connect 0.42.0
cargo set-version -p tor-rtcompat 0.42.0
cargo set-version -p tor-rtmock 0.42.0
cargo set-version -p tor-socksproto 0.42.0
cargo set-version -p tor-units 0.42.0
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes
https://rustsec.org/advisories/RUSTSEC-2026-0120.html
and
https://rustsec.org/advisories/RUSTSEC-2026-0119.html
Neither of these is relevant for Arti, but we may as well upgrade.
This change required some code changes, since the upgrade from 0.25
changed some of the old APIs.
Closes #2517.
|
| |\
| |
| |
| |
| | |
Preperation work for upcoming tor-dirserver test refactoring
See merge request tpo/core/arti!3931
|
| | |
| |
| |
| |
| | |
This is required to do some signature validation on legacy types in an
upcoming commit.
|
| | |
| |
| |
| |
| | |
stream-ctrl should have been stable a while ago, since it is a
dependency of arti/rpc, which is itself stable.
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Remove bodge for security-framework, and update it.
Closes #2387
See merge request tpo/core/arti!3928
|
| | | | |
|
| | |/
| |
| |
| |
| |
| |
| | |
Now that we've updated to MACOS_DEPLOYMENT_TARGET 10.15 (see !3920)
we can use more recent versions of the security-framework crate.
Closes #2387.
|
| |/ |
|
| |
|
|
|
|
|
|
|
|
| |
As I wrote in !3893,
> I don't think we rely on webpki in Tor. Our example code for eg
> `arti-ureq` would be affected, but of couse anyone using that would have
> their own binary crate with their own lockfile.
Therefore this is not a vulnerability of any kind in Arti.
|
| |\
| |
| |
| |
| | |
Geoip: Move the data into the .data segment completely, and into an out-of-tree crate.
See merge request tpo/core/arti!3900
|
| | | |
|
| | |
| |
| |
| |
| | |
This type is more space-efficient than RangeInclusiveMap
in the case where most ranges do not have gaps between them.
|
| |/
|
|
| |
Tests will come in a moment.
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixes:
Crate: rustls-webpki
Version: 0.103.11
Title: Name constraints for URI names were incorrectly accepted
Date: 2026-04-14
ID: RUSTSEC-2026-0098
URL: https://rustsec.org/advisories/RUSTSEC-2026-0098
|
| |\
| |
| |
| |
| | |
proto: Add relay channel handshake unit tests
See merge request tpo/core/arti!3853
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of copying the client unit tests into the channel module, just
make both current unit tests run on a client and relay handshake.
This required a bit of trickery with type HandshakeConnectFn but works
out in the end.
It also adds the RelayMsgBuf that wraps a MsgBuf in order to implement
CertifiedConn which is very relay only.
Signed-off-by: David Goulet <[email protected]>
|
| |/
|
|
| |
This is useful for testing.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes RUSTSEC-2026-0097.
This is an unsoundness bug resulting from unexpected reentranccy if
the whole program contains both of the following
1. rand with the log feature enabled
2. logging hook that calls rand
Both of these are a priori quite unlikely. I checked with "cargo
tree" that our uses of rand do not end up depending on log, so I think
nothing in our tree enables the rand log feature.
|
| |
|
|
| |
Usually, there will only be two of these.
|
| |\
| |
| |
| |
| |
| |
| | |
Allow compile-time selection of rustls CryptoProvider; use aws-lc-rs by default.
Closes #2448
See merge request tpo/core/arti!3857
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using rustls, previously we'd check to see whether the
application had installed a CryptoProvider (as it is required to
do). If not, we'd log a warning and install a Ring provider.
But now, we want to enable other kinds of providers,
so this behavior isn't practical any more.
(See #2448 for discussion.)
Closes #2448.
|
| |\ \
| | |
| | |
| | |
| | | |
Add support for handling CREATE_FAST cells and launching a circuit reactor
See merge request tpo/core/arti!3846
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit uses a proper PEM parser as a dev-dependency to tor-netdoc
for parsing PEM entries, instead of hard-coding long DER byte strings.
It is better to use an external crate for this here, rather than the
existing somewhat accessible (only through traits) implementation of
parse2, because it feels wrong testing parse2 with parse2.
|
| | |/
|/| |
|
| |/
|
|
|
|
|
|
|
|
|
| |
This extracts the key specifier types out of `tor-relay-crypto`, which
* makes the code layout consistent with the hidden service crates (the
key specifiers are defined in a `keys` module in `tor-hsservice`,
while the key wrapper types live in `tor-hscrypto::pk`)
* helps reduce the API surface: the key specifiers are only used in
`arti-relay`, so we can move them there and make them `pub(crate)`
instead of `pub`
|
| | |
|
| |\
| |
| |
| |
| | |
Update getrandom dependeency
See merge request tpo/core/arti!3837
|
| | | |
|
| | |
| |
| |
| |
| | |
Relax the r2d2 and rusqlite deps, and manually pick the relevant hunks
from `cargo update` in Cargo.lock.
|
| | | |
|
| |/
|
|
| |
There are no breaking changes.
|
| |
|
|
|
|
|
|
|
|
|
| |
Generated with:
```
cargo update
cargo update security-framework --precise 3.6.0
```
Downgrading security-framework is a temporary measure to keep our
reproducible macosx builds working.
|
| |
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/issues/2436#note_3384773
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/issues/2436#note_3384773
Made with
nailing-cargo -Eu set-version -p arti-client 0.41.0
nailing-cargo -Eu set-version -p arti-relay 0.41.0
nailing-cargo -Eu set-version -p arti-rpcserver 0.41.0
nailing-cargo -Eu set-version -p arti-ureq 0.41.0
nailing-cargo -Eu set-version -p arti-rpc-client-core 0.41.0
nailing-cargo -Eu set-version -p tor-basic-utils 0.41.0
nailing-cargo -Eu set-version -p tor-error 0.41.0
nailing-cargo -Eu set-version -p tor-general-addr 0.41.0
nailing-cargo -Eu set-version -p tor-geoip 0.41.0
nailing-cargo -Eu set-version -p tor-memquota-cost 0.41.0
nailing-cargo -Eu set-version -p tor-llcrypto 0.41.0
nailing-cargo -Eu set-version -p tor-cert-x509 0.41.0
nailing-cargo -Eu set-version -p tor-rtcompat 0.41.0
nailing-cargo -Eu set-version -p tor-rtmock 0.41.0
nailing-cargo -Eu set-version -p tor-async-utils 0.41.0
nailing-cargo -Eu set-version -p tor-config 0.41.0
nailing-cargo -Eu set-version -p tor-config-path 0.41.0
nailing-cargo -Eu set-version -p tor-rpc-connect 0.41.0
nailing-cargo -Eu set-version -p tor-log-ratelim 0.41.0
nailing-cargo -Eu set-version -p tor-rpcbase 0.41.0
nailing-cargo -Eu set-version -p tor-memquota 0.41.0
nailing-cargo -Eu set-version -p tor-units 0.41.0
nailing-cargo -Eu set-version -p tor-bytes 0.41.0
nailing-cargo -Eu set-version -p tor-protover 0.41.0
nailing-cargo -Eu set-version -p tor-checkable 0.41.0
nailing-cargo -Eu set-version -p tor-cert 0.41.0
nailing-cargo -Eu set-version -p tor-key-forge 0.41.0
nailing-cargo -Eu set-version -p tor-hscrypto 0.41.0
nailing-cargo -Eu set-version -p tor-socksproto 0.41.0
nailing-cargo -Eu set-version -p tor-linkspec 0.41.0
nailing-cargo -Eu set-version -p tor-cell 0.41.0
nailing-cargo -Eu set-version -p tor-persist 0.41.0
nailing-cargo -Eu set-version -p tor-keymgr 0.41.0
nailing-cargo -Eu set-version -p tor-relay-crypto 0.41.0
nailing-cargo -Eu set-version -p tor-proto 0.41.0
nailing-cargo -Eu set-version -p tor-netdoc 0.41.0
nailing-cargo -Eu set-version -p tor-consdiff 0.41.0
nailing-cargo -Eu set-version -p tor-netdir 0.41.0
nailing-cargo -Eu set-version -p tor-relay-selection 0.41.0
nailing-cargo -Eu set-version -p tor-chanmgr 0.41.0
nailing-cargo -Eu set-version -p tor-ptmgr 0.41.0
nailing-cargo -Eu set-version -p tor-dircommon 0.41.0
nailing-cargo -Eu set-version -p tor-guardmgr 0.41.0
nailing-cargo -Eu set-version -p tor-circmgr 0.41.0
nailing-cargo -Eu set-version -p tor-dirclient 0.41.0
nailing-cargo -Eu set-version -p tor-dirmgr 0.41.0
nailing-cargo -Eu set-version -p tor-dirserver 0.41.0
nailing-cargo -Eu set-version -p tor-hsclient 0.41.0
nailing-cargo -Eu set-version -p tor-hsservice 0.41.0
nailing-cargo -Eu set-version -p tor-hsrproxy 0.41.0
|
| |
|
|
|
|
|
|
| |
As per
https://gitlab.torproject.org/tpo/core/arti/-/issues/2436#note_3384773
Made with
cargo set-version --offline --bump minor -p retry-error
|