<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/arti-rpcserver/src/lib.rs, branch arti-v1.1.5</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.5</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.5'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2023-05-24T14:15:56Z</updated>
<entry>
<title>rpc: Make the top-level returned object a "session".</title>
<updated>2023-05-24T14:15:56Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-05-23T13:58:32Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=fef8342be3ad75e3eb7645d239a36f29529a019f'/>
<id>urn:sha1:fef8342be3ad75e3eb7645d239a36f29529a019f</id>
<content type='text'>
This will make it easier to change the semantics of what exactly we
return, whether it has to be/contain a client, whether you can use
it to look up all the live objects, &amp;etc.
</content>
</entry>
<entry>
<title>RPC: Rename session.rs to connection.rs</title>
<updated>2023-05-04T14:35:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-28T17:42:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b807e834a3c06ed9183a119795101628a543c1f3'/>
<id>urn:sha1:b807e834a3c06ed9183a119795101628a543c1f3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>RPC: rename Session to Connection.</title>
<updated>2023-05-04T14:35:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-28T17:40:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7845f04908872bf153a4b12916df600822e39cb9'/>
<id>urn:sha1:7845f04908872bf153a4b12916df600822e39cb9</id>
<content type='text'>
To me, "Session" suggests that we're authenticated, when we are
not necessarily authenticated.  Also, we may eventually want to have
some kind of persistent session object; if we do, then we'll want
Connections to be separate.
</content>
</entry>
<entry>
<title>Add a generational arena for object mapping for RPC.</title>
<updated>2023-05-04T14:35:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-27T22:09:09Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=475da9b8022f284282ce708c40c1cb406b1d179e'/>
<id>urn:sha1:475da9b8022f284282ce708c40c1cb406b1d179e</id>
<content type='text'>
See the comments on `TypedAddr` for some explanations about
why this is so tricky.  Thanks to @diziet for helping me figure
this out.
</content>
</entry>
<entry>
<title>RPC: Move the "listen" part of the RPC listener code to `arti`.</title>
<updated>2023-05-04T14:30:40Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-20T17:49:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=879a4532126fca59baa3a8e1764b1a1363ddeee5'/>
<id>urn:sha1:879a4532126fca59baa3a8e1764b1a1363ddeee5</id>
<content type='text'>
Now there's a module in `arti` that runs the loop for an RPC
listener.  The part of the old `listener` module that made
the framed connections is now part of the `Session` object.

There is now yet another a temporary location for the pipe; we
should pick something better.  At least now it's configurable.
</content>
</entry>
<entry>
<title>rpc: Make an RpcMgr type to own the DispatchTable.</title>
<updated>2023-05-04T14:22:27Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-19T11:59:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=25398b5a3b613ce0272b8f933179824759323ba2'/>
<id>urn:sha1:25398b5a3b613ce0272b8f933179824759323ba2</id>
<content type='text'>
In the future, this will probably hold more data as well, like a
TorClient and some configuration info.

The TorClient will present an issue; I've made comments about that.

Closes #820
</content>
</entry>
<entry>
<title>rpc: Improve error reporting for invalid requests</title>
<updated>2023-04-12T20:21:34Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-12T19:59:47Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=767c91557e6b6bc5429f30b886f8a314df2ddf22'/>
<id>urn:sha1:767c91557e6b6bc5429f30b886f8a314df2ddf22</id>
<content type='text'>
This is a bit big, but it's not that _complicated_.

The idea here is that we use serde's "untagged" enum facility
when parsing our `Request`s, such that if parsing as a `Request`
fails, we parse as an `InvalidRequest` and try to report
what the problem was exactly.

This lets us determine the ID of a request (if it had one),
so we can report that ID in our error message.  We can also
recover from a much broader variety of errors.

We now also conform with the spec reporting errors about
completely wrong json, requests without IDs, and so on.
</content>
</entry>
<entry>
<title>rpc: Add standard warnings to arti-rpcserver</title>
<updated>2023-04-12T11:34:57Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-05T16:19:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ff68a5f02adda1fe41cba0eb5bfd3f602d3234f5'/>
<id>urn:sha1:ff68a5f02adda1fe41cba0eb5bfd3f602d3234f5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>RPC: add a temporary "listen" function.</title>
<updated>2023-04-12T11:34:57Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-05T12:14:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f9de7929c1994df0a7cf3830eab0224a9246ccea'/>
<id>urn:sha1:f9de7929c1994df0a7cf3830eab0224a9246ccea</id>
<content type='text'>
It requires tokio, it's unix-only, and makes some unfortunate
shortcuts.  Probably good enough for initial testing.
</content>
</entry>
<entry>
<title>rpc: Add a Session object and an interaction loop.</title>
<updated>2023-04-12T11:34:57Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-03-29T17:51:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6e3f3b4dfc2568534b2db092d608d12b31866ca8'/>
<id>urn:sha1:6e3f3b4dfc2568534b2db092d608d12b31866ca8</id>
<content type='text'>
</content>
</entry>
</feed>
