From 2e2a915807f647528f971743e489b0052f46d288 Mon Sep 17 00:00:00 2001 From: Kevin Tegtmeier Date: Tue, 2 Apr 2013 16:27:24 -0700 Subject: [PATCH] Fix bug that leaves fds in select after EOF received --- paramiko/agent.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/paramiko/agent.py b/paramiko/agent.py index 5d04dce..1dd3063 100644 --- a/paramiko/agent.py +++ b/paramiko/agent.py @@ -130,15 +130,22 @@ class AgentProxyThread(threading.Thread): if len(data) != 0: self.__inr.send(data) else: + self._close() break elif self.__inr == fd: data = self.__inr.recv(512) if len(data) != 0: self._agent._conn.send(data) else: + self._close() break time.sleep(io_sleep) + def _close(self): + self._exit = True + self.__inr.close() + self._agent._conn.close() + class AgentLocalProxy(AgentProxyThread): """ Class to be used when wanting to ask a local SSH Agent being