Draft: WIP: tor-rtcompat: Add support for AF_UNIX streams.
This starts to implement the AbstractAddr
API from #1152 (closed);
I'm pausing here, to make sure that this approach still looks acceptable.
We shouldn't merge this as-is, since it isn't done.
Next steps after this design is approved:
- Add support to async_std.
- Write more tests
- Make
Runtime
implement onAbstractStreamProvider
. - Use AbstractStreamProvider elsewhere in our code.
Possible design questions:
- Should anything be renamed or moved around?
- Ought we be less cavalier about Box'ing our TcpStreams,
UnixStreams, and stream::Streams in order to type-erase them?
- Do we also want there to be a less type-erased version?
- Would we prefer more enums and fewer boxes?
- Is it okay that AbstractListener doesn't support
async fn accept()
?
cc @gabi-250 , @Diziet, since you both looked at #1152 (closed).