self.fileno=sock.fileno
self.name=""
self.data=""
+
def destroy(self):
self.sock.close()
rm(self)
+
def handleinput(self):
- newdata=self.sock.recv(8192)
+ newdata = None
+ try:
+ newdata = self.sock.recv(8192)
+ except:
+ self.destroy()
+
if not newdata:
self.destroy()
- self.data=self.data+newdata
+ else:
+ self.data = self.data + newdata
+
try:
cmds.parse(self)
- except cmds.CmdError:
+ except cmds.BailOut:
self.destroy()
def add(con):
lst=cons[:]
lst.append(privlistener)
lst.append(publistener)
- inlst,outlst,errlst = select.select(lst, [], [], 0)
+ inlst,outlst,errlst = select.select(lst, [], [], 0.1)
return inlst
def createlistener(path):
s.setblocking(False)
s.bind(path)
if path==ftpio.pubsock:
- os.chmod(path, 0606)
+ os.chmod(path, 0o606)
else:
- os.chmod(path, 0600)
+ os.chmod(path, 0o600)
s.listen(3)
return s