summaryrefslogtreecommitdiffstats
path: root/src/lib/SSLServer.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/SSLServer.py')
-rw-r--r--src/lib/SSLServer.py22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/lib/SSLServer.py b/src/lib/SSLServer.py
index f1e9a65a6..6d053b802 100644
--- a/src/lib/SSLServer.py
+++ b/src/lib/SSLServer.py
@@ -288,21 +288,27 @@ class XMLRPCRequestHandler (SimpleXMLRPCServer.SimpleXMLRPCRequestHandler):
except:
(type, msg) = sys.exc_info()[:2]
if str(type) == 'socket.error' and msg[0] == 32:
- self.logger.warning("Connection dropped from %s" % self.client_address[0])
+ self.logger.warning("Connection dropped from %s" %
+ self.client_address[0])
elif str(type) == 'socket.error' and msg[0] == 104:
- self.logger.warning("Connection reset by peer: %s" % self.client_address[0])
+ self.logger.warning("Connection reset by peer: %s" %
+ self.client_address[0])
elif str(type) == 'ssl.SSLError':
- self.logger.warning("SSLError handling client %s: %s" % \
- (self.client_address[0], msg))
+ self.logger.warning("SSLError handling client %s: %s" %
+ (self.client_address[0], msg))
else:
- self.logger.error("Error sending response (%s): %s" % \
- (type, msg))
+ self.logger.error("Error sending response (%s): %s" %
+ (type, msg))
def finish(self):
# shut down the connection
if not self.wfile.closed:
- self.wfile.flush()
- self.wfile.close()
+ try:
+ self.wfile.flush()
+ self.wfile.close()
+ except socket.error:
+ err = sys.exc_info()[1]
+ self.logger.warning("Error closing connection: %s" % err)
self.rfile.close()