summaryrefslogtreecommitdiff
path: root/genuinedreambox
diff options
context:
space:
mode:
authorFrank Lage <nixkoenner@users.schwerkraft.elitedvb.net>2009-08-22 11:14:34 (GMT)
committerFrank Lage <nixkoenner@users.schwerkraft.elitedvb.net>2009-08-22 11:14:34 (GMT)
commit7d3b0331b439fdc235b5027439bf06b579ffe184 (patch)
tree1437092a823c8e8e5cbce387e6cb492789f8a1e8 /genuinedreambox
parentfb222e3a407cf9bb48a490a12146beabbd9a779b (diff)
fix close socket
Diffstat (limited to 'genuinedreambox')
-rw-r--r--genuinedreambox/src/plugin.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/genuinedreambox/src/plugin.py b/genuinedreambox/src/plugin.py
index babe1d1..646cf23 100644
--- a/genuinedreambox/src/plugin.py
+++ b/genuinedreambox/src/plugin.py
@@ -101,6 +101,10 @@ class genuineDreambox(Screen):
getPage(url).addCallback(self._gotPageLoadRandom).addErrback(self.errorLoad)
except:
self["resulttext"].setText("Can't connect to server. Please check your network!")
+ try:
+ self.uds.close()
+ except:
+ pass
def _gotPageLoad(self, data):
authcode = data.strip().replace('+', '')
@@ -180,14 +184,21 @@ class genuineDreambox(Screen):
return False
def udsSend(self, cmdTyp, data, length):
+ self.uds.settimeout(2)
sbuf = [(cmdTyp >> 8) & 0xff,(cmdTyp >> 0) & 0xff,(length >> 8) & 0xff,(length >> 0) & 0xff]
sbuf.extend(data[:length])
sbuf = struct.pack(str((length + 4))+"B", *sbuf)
- self.uds.send(sbuf)
+ try:
+ self.uds.send(sbuf)
+ except socket.timeout:
+ self["resulttext"].setText("Invalid response from Security service pls restart your Dreambox" )
rbuf = self.uds.recv(4)
leng = [ord(rbuf[2]) << 8 | ord(rbuf[3])]
if (leng != 4):
- res = self.uds.recv(leng[0])
+ try:
+ res = self.uds.recv(leng[0])
+ except socket.timeout:
+ self["resulttext"].setText("Invalid response from Security service pls restart your Dreambox")
else:
return -1
return res