diff --git a/src/judas_server/backend/backend_server.py b/src/judas_server/backend/backend_server.py index 910a969..ead4fd9 100644 --- a/src/judas_server/backend/backend_server.py +++ b/src/judas_server/backend/backend_server.py @@ -210,7 +210,7 @@ class BackendServer: """ self.logger.info(f"[-] Disconnecting {client}...") - if client.socket is None: + if client.socket is None or client.socket._closed: self.logger.warning( f"Client {client} has no socket, nothing to disconnect." ) @@ -274,9 +274,6 @@ class BackendServer: try: if mask & selectors.EVENT_READ: self._receive_inbound(sock, client) - if not client.inbound: - self._disconnect(client) - return while b"\n" in client.inbound: line, client.inbound = client.inbound.split(b"\n", 1)