diff options
Diffstat (limited to 'server/src/network.rs')
-rw-r--r-- | server/src/network.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/server/src/network.rs b/server/src/network.rs index 22cbc65..211d0bc 100644 --- a/server/src/network.rs +++ b/server/src/network.rs @@ -63,6 +63,7 @@ impl ServerNetwork { }; let (send_tx, send_rx) = sync_channel(128); conns.lock().unwrap().insert(conn, (send_tx, None)); + recv_tx.send((conn, Packet::Connect(conn))).unwrap(); let sock2 = match sock.try_clone() { Ok(x) => x, @@ -143,6 +144,7 @@ impl ServerNetwork { Ok(s) } pub fn broadcast(&self, packet: Packet, reliable: bool) { + debug!("* -> {packet:?}"); let ser = Arc::new(packet.write_alloc()); for (cid, (tcp, udp)) in self.conns.lock().unwrap().iter() { if !reliable { @@ -165,6 +167,7 @@ impl ServerNetwork { return; } } + debug!("{conn} -> {packet:?}"); if let Err(_) = tcp.send(ser.clone()) { warn!("{conn}: queue full, packet dropped") } @@ -183,7 +186,6 @@ fn handle_conn_read(conn: u128, sock: TcpStream, tx: Sender<(u128, Packet)>) -> fn handle_conn_write(conn: u128, sock: TcpStream, rx: Receiver<Arc<Vec<u8>>>) -> Result<()> { let mut sock = BufWriter::new(sock); for packet in rx { - debug!("{conn} -> {packet:?}"); sock.write_all(&packet)?; sock.flush()?; } |