| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
Updated the warning message providing additional information about the type of the proxy port.
See merge request tpo/core/arti!596
|
| |/ /
| |
| |
| | |
of the proxy port.
|
| |\ \
| | |
| | |
| | |
| | | |
Enforce no-ring-in-arti/full (and make it true)
See merge request tpo/core/arti!592
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
See arti#493.
|
| | | |
| | |
| | |
| | | |
This is another consequence of the `ring` license issue; see #493.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Implement support for reachable_addrs
Closes #491 and #93
See merge request tpo/core/arti!583
|
| | | | |
| | | |
| | | |
| | | | |
Also, improve its documentation.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Now the primary exposed function is `pick_guard` again.
This commit is just function renaming.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
At the site of modify_hop, we now have a comment explaining the
internal-error issue.
To make the internal error less likely, we lower the modify_hop call
in lib.rs into GuardSet, where it can make sure it's looking at the
same filter as was used to select the guard.
The function name "pick_guard_ext" is not permanent; I'm going to
rename it in the next commit.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Previously, the API said "you need to call this in a loop till it
returns false". We did that in one place, but not another.
With the introduction of filters, forgetting to loop here becomes a
bug: so instead, change the behavior of extend_sample_as_needed so
it handles looping itself.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
These all say, in one form or another, "there is no guard filtering;
there is only one selection". That's now false.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The fake network we construct for these tests is small in ways that
can sometimes cause weird behavior with guard filters. We fix this
by adjusting the parameters of the guard selection algorithm
accordingly in the tests.
With these new parameters, #491 no longer occurs.
This commit also adds comments to explain why the parameters are set
as they are.
Closes #491.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
(This doesn't do anything yet.)
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I'm using serde_with here to just re-use the Display and FromStr
implementations, since those are what has proven easier to type in
the past.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
guard-spec.txt specifies that we have multiple separate samples of
guards that we can use depending on whether the filter is
restrictive or not. Here we implement the rules for switching
between samples.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
Convert its argument type to Option<&NetDir> to better match the
rest of the API.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When we're filtering guards, we have to check whether the filter is
"restrictive": if it forbids most of the guards (by bandwidth), we
keep its guards separated from the main set. If it is
super-restrictive, we also warn.
This functionality is specified in guard-spec.txt.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since a guard can have a bunch of addresses, and the guard is
permitted if any one of those addresses is permitted, then we might
decide to use a guard with some non-permitted addresses. Thus, we
need to filter those addresses before returning the view of the
guard as a FirstHop.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
We don't need to restrict based on bits in the key id any longer,
since we have a real filter.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
The guard filter is now a set of restrictions that can be placed on
allowable guards.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Use impl_standard_builder more and remove manual Default/builder impls
See merge request tpo/core/arti!594
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Upgrade to float_eq 1.0.0
See merge request tpo/core/arti!591
|
| | | |_|/ /
| |/| | | |
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Config handling and logging fixes
Closes #480
See merge request tpo/core/arti!589
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Prompted by review
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/589#note_2813596
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
Right now this is an IEFI and therefore a no-op.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
It contains only sections, but we want to detect when that is a problem!
|
| | | |/ / /
| |/| | |
| | | | |
| | | | | |
We're going to call this new closure another time.
|