ctf_pwn/io/pipe/convert/
stream.rs

1use crate::io::Pipe;
2use tokio::io::{split, ReadHalf, WriteHalf};
3use tokio::io::{AsyncRead, AsyncWrite};
4
5impl<T: AsyncRead + AsyncWrite> From<T> for Pipe<ReadHalf<T>, WriteHalf<T>> {
6    fn from(value: T) -> Self {
7        let (read_stream, write_stream) = split(value);
8        Pipe::new(read_stream, write_stream)
9    }
10}