| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | |
| | | | |
| | | | |
| | | | | |
Reformatting deferred for clarity.
|
| | | | | |
| | | | |
| | | | |
| | | | | |
This test case shows that we return a suboptimal error in some cases.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
ErrorDetail isn't PartialEq so we can't assert_eq! it.
But the discriminants will be.
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
This disposes of the TODO as well.
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
(Taken from tpo/core/arti!1113 and squashed by Ian Jackson, with
conflicting hunk in StreamPrefs struct skipped.
The setter name is wrong, the cfg feature is wrong, there are no
docs, and the TODO is still there. These will be fixed in a moment.)
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This should be enabled by default. There's still no setter for not,
nor is it honoured - those are separate TODOs.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Previously this error meant "we haven't written this code yet".
Now, we change it to "you haven't built Arti with this feature".
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
No functional change yet. We'll use this shortly.
|
| | | | | |
| | | | |
| | | | |
| | | | | |
Disposes of two TODOs.
|
| | | | | |
| | | | |
| | | | |
| | | | | |
This will make subsequent commits less noisy to read.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
These have already been partially/replaced supplemented.
The other test referred to will appear shortly.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
More work on RPC sessions, connections, and managers
See merge request tpo/core/arti!1254
|
| | | | | | | |
|
| | | |/ / /
| |/| | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This will later let us tell the session-creation function
how the authentication occurred, which will let it decide
what privileges to provide.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Formerly, every time we wanted to launch a new connection, we had
to give the RpcMgr a TorClient. The connection would hold that
TorClient until a session was authenticated, and then would wrap
it in a Session and put it in the object map.
Now, the RpcMgr holds a Box<dyn Fn()...> that knows how to
create Sessions. When a connection is authenticated, it
asks the Mgr to make it a new session. This lets us make it
clearer that the TorClient simply can't be given out until the
connection is authenticated. Later, it will let us create
more types of Session objects under more complicated rules.
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We'll want to move the responsibility for creating Sessions outside
the rpcmgr crate.
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This adds a Weak reference from Connection to Mgr, makes DispatchTable
mutable, and makes a few other changes as discussed between me and
Diziet the other week.
I bet we are not done tweaking this, but I hope it's a setp forwards.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Resolve many TODO HS items in tor-netdoc
See merge request tpo/core/arti!1251
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The last piece here is removing some needless keygen from the
tests. This causes the test output (using the deterministic PRNG)
to change.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The value here is 32 bytes; I'm adding it to to the specification
as torspec!141
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
(I doubt that there is a viable side channel here, but still we
might as well get in the habit of doing these things properly.)
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is mostly code movement; you may want to review it with
`--color-moved`.
I'm doing this so we can also use the function in netdoc for
looking up hsdesc authentication.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
I'm using HSS for hs-service features.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This could never be a full rustdoc test, since rustdoc never
runs tests for private items. Even if it were a rustdoc test,
it uses a bunch of types that aren't exposed in the right places,
and it invokes nonexistent functions, and it assumes a `self`
that isn't there.
In lieu of writing a new untested test, I've added a note to refer
the developer to where they can find working example code.
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| |\ \ \ \ \ \
| |_|_|/ / /
|/| | | | |
| | | | | |
| | | | | | |
tor-cell: Downgrade 2 TODO-HS to TODO-HSS
See merge request tpo/core/arti!1259
|
| |/ / / / / |
|
| |\ \ \ \ \
| |_|_|/ /
|/| | | |
| | | | |
| | | | | |
arti-*: Rename hs feature to onion-service-client
See merge request tpo/core/arti!1039
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Rationale as per #756.
This is the same name as in the `arti` crate.
|
| |\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | | |
rpc: Make CastTable::insert be more type-safe
See merge request tpo/core/arti!1253
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
It's now not actually possible to write code that doesn't work, even
if `Tr` *isn't* 'static, because of the bounds on `CastTable::insert`.
I tried to produce a non-working setup with a non-static `Simple`, but
you can't implement `Object` for such a thing. Removing 'static from
Object would stop the downcasts from Any to Object working.
Prior to the new typesafe insert, this change
- let f: fn(&dyn $crate::Object) -> &(dyn $traitname + 'static) = |self_| {
+ let f: fn(&dyn $crate::Object) -> &(dyn $traitname) = |self_| {
would result in a runtime crash. Now it results in a compiler error.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This was locally bound to `S` in one place. Bind and use it throughout.
Since this is an RPC object, `O` is a better name.
In each item, use the description once and thereafter just the name.
|