Fixed missing check for socket state

pull/154/head
Mark Qvist 2022-11-03 18:03:00 +01:00
rodzic 76fcad0b53
commit 88b88b9b64
1 zmienionych plików z 6 dodań i 3 usunięć

Wyświetl plik

@ -531,12 +531,14 @@ class I2PInterfacePeer(Interface):
if callable(socket.close):
try:
socket.shutdown(socket.SHUT_RDWR)
if self.socket != None:
socket.shutdown(socket.SHUT_RDWR)
except Exception as e:
RNS.log("Error while shutting down socket for "+str(self)+": "+str(e))
try:
socket.close()
if self.socket != None:
socket.close()
except Exception as e:
RNS.log("Error while closing socket for "+str(self)+": "+str(e))
@ -677,7 +679,8 @@ class I2PInterfacePeer(Interface):
if (time.time()-self.last_write > I2PInterfacePeer.I2P_PROBE_AFTER*1):
try:
self.socket.sendall(bytes([HDLC.FLAG, HDLC.FLAG]))
if self.socket != None:
self.socket.sendall(bytes([HDLC.FLAG, HDLC.FLAG]))
except Exception as e:
RNS.log("An error ocurred while sending I2P keepalive. The contained exception was: "+str(e), RNS.LOG_ERROR)
self.shutdown_socket(self.socket)