Wireshark-dev: [Wireshark-dev] TCP reassembly and Return value of a new-style	dissector
      
      
Hi,
I have recently come across some problems with reassembly of SIP 
messages over TCP one problem seems to be related to when a segment 
contains one full PDU and a segment of the next following PDU in this 
case the first SIP line of the following PDU is not complete.
I think the ultimate solution would be for the TCP dissector to call the 
SIP dissector again with the next incomplete PDU
after receiving the number of bytes "accepted" by the SIP dissector e.g 
using the "new-style dissector interface.
also see http://seclists.org/wireshark/2014/Jun/289
As I read the code the first step would be to have
call_dissector()                                                [OK]
try_conversation_dissector()
dissector_try_heuristic()
dissector_try_uint_new                                 [OK]
Return the number of bytes consumed, 0 or -1(need more data) not sure 
about DESEGMENT_UNTIL_FIN (-2?).
If people agree the biggest change is to change 
dissector_try_heuristic() to return an int.
What do you think?
Regards
Anders