Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: [Wireshark-dev] get_pdu_len signature change (TCP re-assembly) and SVN versions

From: "Jacques, Olivier \(PD&E IT Test\)" <olivier.jacques@xxxxxx>
Date: Tue, 21 Nov 2006 13:36:03 +0100
Hello,
 
with recent Wireshark SVN versions, my TCP plugins which use re-assembly are throwing exceptions.
I found that there is a change that occured in "get_pdu_len" signature that happened in SVN 19751 (http://www.mail-archive.com/wireshark-commits@xxxxxxxxxxxxx/msg01181.html).
 
The corresponding documentation in README.developer should change too to reflect that.
In 2.7.1 Using tcp_dissect_pdus(), the text should read:
-----------------------------------
 a routine that takes as arguments a packet_info pointer, a tvbuff pointer and an offset
 value representing the offset into the tvbuff at which a PDU
 begins and should return - *without* throwing an exception (it
 is guaranteed that the number of bytes specified by the previous
 argument to tcp_dissect_pdus is available, but more data might
 not be available, so don't refer to any data past that) - the
 total length of the PDU, in bytes;
-----------------------------------
I updated my plugins and it seems to be OK.
 
The ideal would be to protect the plugins from being incompatible from one Wireshark version to another (I know binary compatibility is not guaranteed, but I would like to make this as transparent as possible).
The first idea that comes to me is having access to the SVN release at run time (compile time is not enough as we provide plugin binaries) and test against this.
 
But maybe there is something that already exist for that?
 
Thanks,
Olivier.