From 726dfcd60f79cdf7bcb3597ac64fd7f2deac1ea7 Mon Sep 17 00:00:00 2001 From: lxnay Date: Tue, 11 Nov 2008 15:13:43 +0000 Subject: [PATCH] Entropy/EntropySocketClientCommands: - when socket fails on transmit, return None instead of crashing due to SSLError exceptions Entropy/SystemSocketClientInterface: - always ignore socket errors in disconnect(), who cares? git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2674 cd1c1023-2f26-0410-ae45-c471fc1f0318 --- libraries/entropy.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/libraries/entropy.py b/libraries/entropy.py index ee4c9506a..c3e561e6a 100644 --- a/libraries/entropy.py +++ b/libraries/entropy.py @@ -21261,8 +21261,11 @@ class EntropySocketClientCommands: return lasterr tries -= 1 - # send command - self.Service.transmit(cmd) + try: + # send command + self.Service.transmit(cmd) + except (exceptionTools.SSLError,): + return None # receive answer data = self.Service.receive() @@ -22206,10 +22209,16 @@ class SystemSocketClientInterface: self.sock_conn.shutdown() self.sock_conn.close() elif self.ssl and not self.pyopenssl: - self.real_sock_conn.shutdown(self.socket.SHUT_RDWR) + try: + self.real_sock_conn.shutdown(self.socket.SHUT_RDWR) + except self.socket.error: + pass del self.sock_conn self.sock_conn = None - self.real_sock_conn.close() + try: + self.real_sock_conn.close() + except self.socket.error: + pass if not self.quiet: mytxt = _("Successfully disconnected from host") self.Entropy.updateProgress(