| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
| | |
| | |
| | | |
This was missing the conventional spaces. Noticed in passing.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
We don't need this because the manager takes an IptsManagerView
which can be connected to something other than a real publisher
(and is pretty good at passing on the info).
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
This is the persistent IPT feature.
|
| | | |
| | |
| | |
| | | |
We must generate keys and so on before we can set up an Establisher.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
IntroPointId was RelayIds but that's wrong, because there can be
different IPTs at the same relay - but also because an established IPT
might change its RelayIds.
Use IptLocalId instead, which I think is the type we decided to use
for this, and which is, conveniently, Copy.
And change the variable names to match, everywhere.
Specifically: in places where an intro point is implied (ipt_mgr.rs,
ipt_establish.rs) use the name `lid` everywhere, like in ipt_mgr.rs.
Elsewhere, use `ipt_lid`.
(We could use a longer name, but in that case it should be changed in
ipt_mgr.rs too.)
No actual functional change in this commit.
|
| | |/
| |
| |
| |
| |
| |
| | |
Local variables can have contextually implied elements omitted. In
this case that's `hs` and `ipt`, leaving `k_sid` as in ipt_mgr.rs.
Put the full name in the doc comment.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This threads the country codes work through the rest of the codebase:
- `tor-dirmgr` will now enable GeoIP with the embedded database when the
`geoip` future is enabled
- This can be extended later using the `DirMgrConfig` to allow
specifying a custom database; this is not done here, though
- `tor-circmgr`'s `SupportedCircUsage` and `TargetCircUsage` fields gain
new `country_code` members to allow filtering circuits by country
- These are `()` in builds where the `geoip` feature is not enabled --
doing it this way means we don't have to copy and paste huge swathes
of code, since we can't use `#[cfg]` in patterns
- `ExitPathBuilder` gains (hacked-in) support for choosing a relay with
the correct country code
- Due to the lack of conjuction, we just copy and paste a small bit,
pending further refactoring
- `StreamPrefs` now lets you specify a country code, letting embedders
make use of the feature
|
| |\ \
| |/
|/|
| |
| | |
tor-hsservice: Implement ipt_set
See merge request tpo/core/arti!1577
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
This is actually just the start of an existing test case.
tor-hsservice tests will want this in a moment.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
Defend against rustfmt worsifying this by adding an empty comment.
|
| | |
| |
| |
| |
| |
| | |
From ..._start. The old name is confusing when you see a call site,
because the actual time passed isn't the start time, but the call site
looks like it ought to be.
|
| | |
| |
| |
| | |
This gains an almost impossible error case.
|
| | | |
|
| | |
| |
| |
| | |
This is needed since the notification channel will be an mpsc.
|
| | | |
|
| | | |
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
Define a keypair type for HsSvcNtor{,Secret}Key, and use it in ipt_mgr.
Closes #1030
See merge request tpo/core/arti!1590
|
| | | |
|
| | |
| |
| |
| | |
Closes #1030.
|
| | |
| |
| |
| |
| | |
(Also, extend our macro so that we can wrap other curve25519 keys in
this way, if we want.)
|
| |\ \
| | |
| | |
| | |
| | | |
tor-hsservice: Implement upload_descriptor_with_retries.
See merge request tpo/core/arti!1592
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
We don't really need a separate task for handling timeouts, we can just
create an `Either` future (one of the variants represents the timeout
future, while the other is the forever pending, "no timeout" option).
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
upload_descriptor_with_retries.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This state will be shared with the task spawned by
`Reactor::upload_descriptor_with_retries()`.
We need this refactoring because `upload_with_descriptor_with_retries`
is not a `&self` method but requires several fields from `Reactor`
(currently just `runtime`, `mockable`, `hsid`).
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
tor-ptmgr: refactor Pluggable Transport code
See merge request tpo/core/arti!1581
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Note: this isn't perfect, though it moves both match arms to
try_match_common_messages, it does end up resolving them separately
using a helper function, and also necessitated creating another
function in the PluggableTransportPrivate trait
|
| | | | | |
|
| | | | | |
|
| |\ \ \ \
| | |/ /
| |/| |
| | | |
| | | | |
tor-hsservice: Don't block the reactor on the descriptor uploads.
See merge request tpo/core/arti!1580
|