| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
| |
Previously, the HsCircPool had a bug that caused SHORT lite-vanguards
circuits to be incorrectly extended by one hop when being repurposed as
EXTENDED circuits (EXTENDED circuits only need to be extended by extra
hop if full vanguards are in use).
Closes #1456 and #1458
|
| | |
|
| |\
| |
| |
| |
| |
| |
| | |
tor-circmgr: Exclude the circ target when building paths.
Closes #1425
See merge request tpo/core/arti!2179
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
We now return an internal error if the path we've just built contains
the same hop in multiple positions.
|
| | |
| |
| |
| | |
Closes #1425
|
| | |
| |
| |
| | |
target.
|
| | |
| |
| |
| |
| |
| |
| | |
When checking for relay equality, we are happy to accept some false
positives (which result in building/selecting a different circuit). We
want to be less tolerant of false negatives, to avoid accidentally using
a circuit that doesn't have the properties we need.
|
| |/
|
|
|
|
| |
This is a follow-up from !2167.
It should prevent issues like #1417 from going unnoticed.
|
| |
|
|
| |
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2168?commit_id=3c67fa55c7c5b0c4f30c1d57e8e67fe541d9c99e#note_3033368
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Storing the VanguardMode in multiple places (in the VanguardMgr *and*
the HS circ Pool) is dangerous and can lead to split brain situations
where different parts of the code think they are running in different
VanguardModes.
See #1424
|
| |
|
|
|
|
|
| |
`VanguardMgr` should be the source of truth for obtaining the current
`VanguardMode`.
Closes #1424
|
| |
|
|
| |
See arti#1424
|
| |
|
|
|
|
|
|
|
|
|
| |
Previously, HS stub circuit selection (with vanguards enabled) was
buggy: when selecting a circuit stub from the circ pool, we failed to
ensure its last hop was different from the circuit target. So in some
cases, arti would attempt to extend a stub circuit of the form G -> L2
[-> L3] -> T to T, which can't work, because a relay won't extend a
circuit to itself (or to its predecessor, for that matter).
Closes #1417
|
| |
|
|
| |
This will soon grow more complex.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Previously, we'd `debug_assert` that the length of the path is valid.
However, `debug_` asserts are compiled out for release builds, which
means that if we have some code path that triggers the assertion
failure, it will go unnoticed unless our tests happen to exercise it.
It's safer to return an internal error, because we definitely don't want
to proceed if the path is too short (see arti#1400 and arti#1409).
Addresses https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2154#note_3030820
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
We want to export the `VanguardConfig` even if the `vanguards` feature
is disabled (we will need to unconditionally include it in the arti
config).
Note that if `vanguards` are disabled, the `VanguardMode` from the
`VanguardConfig` can only be `Dsiabled`.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
The previous STUB/STUB+ terminology was confusing, because STUB and
STUB+ are both "circuit stubs" (but STUB is shorter than STUB+).
Closes #1339
|
| |
|
|
| |
Part of #1339
|
| |\ |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
We will soon need to reuse this.
|
| | |
| |
| |
| |
| |
| | |
I am about to reuse one of these on the "lite" vanguards branch. I am
renaming them to make it easier to see which one of the two I will be
using.
|
| | |
| |
| |
| |
| |
| | |
One of these assertions currently fails, because we have a bug in the
vanguard path builder: if lite vanguards are enabled, we only build
2-hop circuits instead of 3.
|
| | |
| |
| |
| | |
Closes #1400
|
| | |
| |
| |
| |
| |
| | |
We're about to use this in `maybe_extend_stub_circuit` too.
Part of #1400
|
| | |
| |
| |
| |
| | |
I don't think it's all wrong, this was left over from the first draft
implementation.
|
| | | |
|
| | |
| |
| |
| | |
This commit is automatically generated.
|
| | |
| |
| |
| |
| | |
(In most cases, by writing the documentation;
in tests, by permitting the documentation to be missing.)
|
| | |
| |
| |
| | |
Closes #1400
|
| | |
| |
| |
| |
| |
| | |
We're about to use this in `maybe_extend_stub_circuit` too.
Part of #1400
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
We will soon need to reuse this.
|
| | |
| |
| |
| |
| |
| | |
I am about to reuse one of these on the "lite" vanguards branch. I am
renaming them to make it easier to see which one of the two I will be
using.
|
| |/
|
|
|
|
| |
One of these assertions currently fails, because we have a bug in the
vanguard path builder: if lite vanguards are enabled, we only build
2-hop circuits instead of 3.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for p in `cat ../u`; do cargo set-version --locked --offline -p $p; done
where u contains
tor-basic-utils
tor-async-utils
tor-error
tor-config
tor-units
tor-geoip
tor-rtcompat
tor-rtmock
tor-log-ratelim
tor-rpcbase
tor-memquota
tor-llcrypto
tor-protover
tor-bytes
tor-hscrypto
tor-socksproto
tor-checkable
tor-cert
tor-linkspec
tor-cell
tor-proto
tor-netdoc
tor-consdiff
tor-netdir
tor-relay-selection
tor-persist
tor-chanmgr
tor-ptmgr
tor-guardmgr
tor-circmgr
tor-dirclient
tor-dirmgr
tor-keymgr
tor-hsclient
tor-hsservice
tor-hsrproxy
arti-client
arti-rpcserver
arti-hyper
|
| |
|
|
| |
Otherwise we end up logging that we're launching 0 circuits.
|
| |
|
|
| |
This makes the vanguards feature non-experimental.
|