Bug 35702 - TLPv1 is broken
Summary: TLPv1 is broken
Status: RESOLVED FIXED
Alias: None
Product: papyon
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: Other All
: medium major
Assignee: papyon-bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-26 11:33 UTC by Riccardo (c10ud)
Modified: 2011-04-12 20:47 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Riccardo (c10ud) 2011-03-26 11:33:23 UTC
As tested on irc with lfrb, TLPv1 is currently broken.

Tested with purple and webmessenger, there're some issues which prevent papyon from downloading correct msnobjects.

lfrb suggests:

        if self.blob_offset + self.chunk_size > self.blob_size:
            #raise TLPParseError(1, "chunk end exceeds blob size", header)
            self.chunk_size = self.blob_size - self.blob_offset
        if self.blob_size >= 0 and self.chunk_size == 0:
            #raise TLPParseError(1, "empty chunk for non-empty blob", header)
            self.chunk_size = self.blob_size

this completes the transfer but the msnobject isn't valid (isn't showed up)

You can test this simply by using emesene2 (which uses papyon-git) and pidgin/adium. Change your dp in pidgin/adium and you'll see papyon won't get the updated one.

This could affects filetransfers. Infact with the proposed modification you'll get an exception when receiving a file from those clients


papyon/msnp2p/transport/TLP.py", line 145, in append_chunk
    assert self.id == chunk.blob_id, "Trying to append a chunk to the wrong blob"


Setting severity to major since a big number of clients are based on purple et. al. (like webmessenger)
Comment 1 Louis-Francis Ratté-Boulianne 2011-04-12 20:47:27 UTC
Fixed. It will be part of papyon 0.5.5


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.