async fn try_proxy_connection<A: ToSocketAddrs + Clone + Debug>(
proxy_addr: A,
target_addr: &Socks5Addr,
port: u16,
network: Network,
force_v1: bool,
) -> Result<(ReadTransport<BufReader<ReadHalf<TcpStream>>>, WriteTransport<WriteHalf<TcpStream>>, TransportProtocol), TransportError>