async-rs / async-rs/async-tls

Make TlsStream cloneable

Open
#18 1 comment 8 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
172
Forks
49
PR merge metrics
No merged PRs in 30d

Description

`async_std::net::TcpStream` implements `Clone`, which makes it possible to read and write to a socket at the same time.
[Official async-std example](https://github.com/async-rs/async-std/blob/master/examples/tcp-echo.rs)
This library does not implement `Clone` for `TlsStream`, neither does it implement `AsyncRead` or `AsyncWrite` for `&TlsStream`.
How would I rewrite the example above to use TLS when `TlsStream` is not clonable?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the official async-std tcp-echo example linked in the issue and compare its TcpStream ownership with the TlsStream API. Check how TlsStream currently handles AsyncRead and AsyncWrite, then define completion as a TLS version of the example that supports simultaneous reading and writing without ownership workarounds.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
40/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.