summaryrefslogtreecommitdiffstats
path: root/src/bin/server/main.rs
diff options
context:
space:
mode:
authorsalmonik <raisersoft@proton.me>2026-02-28 17:35:40 +0100
committersalmonik <raisersoft@proton.me>2026-02-28 17:35:40 +0100
commit28382b249535e964ce983fe5a0821a898a077775 (patch)
tree3b68dd13d9fec27ab3163f09285c718874540c65 /src/bin/server/main.rs
parentinit version (diff)
downloadzagan-bet-28382b249535e964ce983fe5a0821a898a077775.tar.gz
zagan-bet-28382b249535e964ce983fe5a0821a898a077775.zip
multi file for both sides
Diffstat (limited to '')
-rw-r--r--src/bin/server/main.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/bin/server/main.rs b/src/bin/server/main.rs
new file mode 100644
index 0000000..2c6e1dc
--- /dev/null
+++ b/src/bin/server/main.rs
@@ -0,0 +1,23 @@
1mod args;
2mod handler;
3
4use std::net::TcpListener;
5use std::thread;
6
7fn main() {
8 let args = args::parse_args();
9 let listener = match TcpListener::bind(format!("{}:{}", args.ip, args.port)) {
10 Ok(l) => l,
11 Err(e) => {
12 eprintln!("Failed to bind to {}:{}: {}", args.ip, args.port, e);
13 std::process::exit(1);
14 }
15 };
16 println!("Server listening on {}", listener.local_addr().unwrap());
17 for stream in listener.incoming() {
18 let stream = stream.unwrap();
19 thread::spawn(move || {
20 handler::handle_client(stream);
21 });
22 }
23}