server.rs:
use std::net::UdpSocket;
fn main() -> std::io::Result<()>{
{
let mut socket = UdpSocket::bind("127.0.0.1:3000")?;
let mut buf = [0; 10];
let (amt, src) = socket.recv_from(&mut buf)?;
let buf = &mut buf[..amt];
buf.reverse();
socket.send_to(buf, &src)?;
}
Ok(())
}
strace ./server
здесь останавливается вывод:
<...>
socket(AF_INET, SOCK_DGRAM|SOCK_CLOEXEC, IPPROTO_IP) = 3
bind(3, {sa_family=AF_INET, sin_port=htons(3000), sin_addr=inet_addr("127.0.0.1")}, 16) = 0
recvfrom(3,
Попытки вызова echo -n "qwerty" | netcat 127.0.0.1 3000
после запуска вышеуказанной программы ничего не изменяют.
Почему?