[Python-de] bug in socket

Christian Hinreiner hin at studioneun.de
Mon Jul 11 16:19:51 CEST 2005


Hallo zusammen,
 
wir haben hier ein python-Socket laufen, dass XML-Daten in ein kürzeres
Protokoll umsetzt.
Sehr einfacher Code, 196 Zeilen.
 
Jedoch haben wir noch einen Bug darin und auch einen Tipp, dass der Bug an
dieser Stelle sein könnte:
 
while True:
                data = self.conn.recv(10240)
                if not data: 
                    break
                    
                print "EMPFANGENE DATEN: %d BYTES = %s" % (len(data),
repr(data))
                    
                self.data += data
    
                print "got a total of %d bytes" % len(self.data)
                
                if self.data.find("</DynamicInfo>") < 0 and
self.data.find("</Command>") < 0:
                    print "Daten sind noch kein XML" 
                    continue
                
                parser = glump()
                parser.parse(self.data)
                    
                parser.zeilen.append("ENDE")
                pprint.pprint(parser.zeilen)
                    
                self.parent.dispatch(id(self), parser.zeilen)
                self.data = "" // <= es wird hierbei nicht mehr überprüft,
ob sich hinter dem closing tag noch daten befinden!
                parser = None
 
 
Wer kann uns kurzfristig weiterhelfen?
 
Gruesse
Christian Hinreiner
089 21 02 93-20
 
 
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: http://starship.python.net/pipermail/python-de/attachments/20050711/55fa6553/attachment.htm