From f659022e8ce7ee4e076fb1eccaa9d5847a31f733 Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Mon, 1 May 2023 08:02:04 +0200 Subject: [PATCH] First echo server barebones for problem_04 --- problem_04/.gitignore | 2 ++ problem_04/Cargo.toml | 17 +++++++++++++++++ problem_04/bin/client.rs | 0 problem_04/bin/server.rs | 15 +++++++++++++++ problem_04/src/lib.rs | 3 +++ 5 files changed, 37 insertions(+) create mode 100644 problem_04/.gitignore create mode 100644 problem_04/Cargo.toml create mode 100644 problem_04/bin/client.rs create mode 100644 problem_04/bin/server.rs create mode 100644 problem_04/src/lib.rs diff --git a/problem_04/.gitignore b/problem_04/.gitignore new file mode 100644 index 0000000..bef0727 --- /dev/null +++ b/problem_04/.gitignore @@ -0,0 +1,2 @@ +/target/ +.idea diff --git a/problem_04/Cargo.toml b/problem_04/Cargo.toml new file mode 100644 index 0000000..74cf7d9 --- /dev/null +++ b/problem_04/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "problem_04" +version = "0.1.0" +edition = "2021" + +[[bin]] +name = "server" +path = "bin/server.rs" + +[[bin]] +name = "client" +path = "bin/client.rs" + +[dependencies] +tokio = { version = "1.14.0", features = ["full"] } +tracing = "0.1.37" +tracing-subscriber = "0.3.17" diff --git a/problem_04/bin/client.rs b/problem_04/bin/client.rs new file mode 100644 index 0000000..e69de29 diff --git a/problem_04/bin/server.rs b/problem_04/bin/server.rs new file mode 100644 index 0000000..c6e9f69 --- /dev/null +++ b/problem_04/bin/server.rs @@ -0,0 +1,15 @@ +use std::io; +use tokio::net::UdpSocket; + +#[tokio::main] +async fn main() -> io::Result<()> { + let sock = UdpSocket::bind("0.0.0.0:8080").await?; + let mut buf = [0; 1024]; + loop { + let (len, addr) = sock.recv_from(&mut buf).await?; + println!("{:?} bytes received from {:?}", len, addr); + + let len = sock.send_to(&buf[..len], addr).await?; + println!("{:?} bytes sent", len); + } +} diff --git a/problem_04/src/lib.rs b/problem_04/src/lib.rs new file mode 100644 index 0000000..e7a11a9 --- /dev/null +++ b/problem_04/src/lib.rs @@ -0,0 +1,3 @@ +fn main() { + println!("Hello, world!"); +}