fix(connector.py): avoid recursion on failure in send()

This commit is contained in:
2025-08-30 18:28:46 +02:00
parent f89d9c41f8
commit 6efc7754f9

View File

@@ -100,17 +100,18 @@ class Connector:
def send(self, data: bytes) -> None:
self.logger.debug(f"[>] Sending data: {data}")
try:
self.socket.sendall(data)
self.logger.info("[>] Data sent")
self._send_ack()
except BrokenPipeError as e:
self.logger.error(f"[!] Broken pipe: {e}")
self.logger.info("[.] Reconnecting...")
self.connect()
self.send(data)
except (socket.error, ValueError) as e:
self.logger.error(f"[!] Failed to send data: {e}")
while True:
try:
self.socket.sendall(data)
self.logger.info("[>] Data sent")
self._send_ack()
break
except BrokenPipeError as e:
self.logger.error(f"[!] Broken pipe: {e}")
self.logger.info("[.] Reconnecting...")
self.connect()
except (socket.error, ValueError) as e:
self.logger.error(f"[!] Failed to send data: {e}")
def receive(self) -> bytes:
self.logger.debug("[.] Waiting to receive data...")