| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When generating a keypair, `KeyMgr::generate` inserts a
single entry representing the keypair into the keystore. However, for
some keypairs, the keystore will need contain a separate entry
containing just the public part of the keypair.
This commit introduces `KeyMgr::generate_with_derived`, which generates
2 entries in the specified keystore: one for the keypair and another for
the public key, which makes it easier to insert keypairs and their
corresponding public keys into the keystore without to fall out of sync.
Previously, generating a (public, private) keypair involved generating a
new keypair with `KeyMgr::generate` and manually inserting the
corresponding public key entry.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
`EncodableKey` is a trait for encoding keypairs and public keys. Keygen
only makes sense for key_pairs_ (it doesn't make sense for public keys),
so it makes sense to move `generate()` out of `EncodableKey`,
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Implement reconfigure functions for hsservice and hsrproxy
See merge request tpo/core/arti!1651
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
Our reconfigure methods take these by convention.
|
| |\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
tor-rtmock: Docs updates (and an API fix)
See merge request tpo/core/arti!1650
|
| | | | |
| | | |
| | | |
| | | | |
This was a slip.
|
| | | | | |
|
| | | | | |
|
| |\| | |
| | | |
| | | |
| | | |
| | | | |
Provide and use a SimpleMockTimeProvider
See merge request tpo/core/arti!1639
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
Adding "/// " to every line causes rustfmt to have conniptions about
the trailing whitespace.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This example demonstrates MockSleepRuntime, which we don't want to use
in new tests.
It's probably worth keeping it, though, to help with comprehension of
existing tests. So move it.
This does rather highlight the lack of good overall
example/instructions for MockRuntime.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
This is clearer, I think.
|
| | | | |
| | | |
| | | |
| | | | |
This is clearer, I think.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
The module-level docs here are less visible and also not where most of
the other stuff was.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
And introduce a table showing the situations.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
We don't need it any more; we won't call wake again.
So, call .wake() rather than .wake_by_ref().
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Making the SleepFuture first means we don't call .wake_any() with the
other invariants violated. This doesn't actually matter with the code
as it stands, but it's less confusing this way.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
This helped me diagnose
https://gitlab.torproject.org/tpo/core/arti/-/issues/1040
|
| | | | |
| | | |
| | | |
| | | | |
We're going to want to add something to it.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
Now we're making breaking changes anyway, in or mock crate, it is a
convenient time to get rid of this.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This was named after the method from MockSleepRuntime. The name is
confusing because it seems to imply it might do something to the
monotonic time.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
For now we do this by changing the meaning of the name
`MockSleepProvider` in runtime.rs. This is a bodge to reduce noise in
this diff.
Consequences at call sites:
* If the type is named somehow, the other type must be used.
* SimpleMockTimeProvider calls it jump_wallclock rather than jump_to,
which is IMO a better name. (MockRuntime will change in a moment.)
* SimpleMockTimeProvider's advance() function isn't async and doesn't
yield. But none of the call sites actually mind that.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
For our time provider we want a priority queue that lets us look up
entries and delete them. std's Heap doesn't do that. priority-queue
has the API we need and reasonable stats etc, and is maintained.
It has some IMO-tolerable licence wrinkles.
|
| | | | |
| | | |
| | | |
| | | | |
Nowadays there are methods for this.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
arti: Write the minimal code needed to launch onion proxies.
See merge request tpo/core/arti!1644
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
This makes some other futures Send+Sync, which lets us spawn them.
|
| | | | | | |
|
| | | | | | |
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
tor-hsservice: ipt_set: Docs clarifications
See merge request tpo/core/arti!1647
|
| | |/ / / /
| | | | |
| | | | |
| | | | | |
Apropos a conversation in !1645
|