Ethereal-dev: Re: SV: [Ethereal-dev] Patch for Bug #817

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Mike Duigou <ethereal@xxxxxxxxxx>
Date: Thu, 23 Mar 2006 10:24:25 -0800
Corrected patch vs SVN 17707 enclosed.

This patch (and the previous patch) have been fuzz tested (>500 iterations) with diverse JXTA traces.

Mike

Anders Broman wrote:
Hi,
I get the following warning when applying the patch:
packet-jxta.c
packet-jxta.c(554) : warning C4133: 'initializing' : incompatible types -
from '
struct conversation *' to 'struct jxta_stream_conversation_data *'

Brg
Anders

-----Ursprungligt meddelande-----
Fr�n: ethereal-dev-bounces@xxxxxxxxxxxx
[mailto:ethereal-dev-bounces@xxxxxxxxxxxx] F�r Mike Duigou
Skickat: den 23 mars 2006 00:22
Till: Ethereal development
�mne: [Ethereal-dev] Patch for Bug #817

I have improved the heuristics and the display tree building code in
dissect_jxta_udp() and dissect_jxta_stream() to avoid this problem.

Enclosed is a patch which corrects the problem.

There remains one point of confusion for me. Heuristic dissectors are supposed to return TRUE or FALSE. Assuming that the underlying dissection routine is a new style dissector returning "int" it is obvious that :
	new dissector result > 0 --> heuristic returns TRUE
	new dissector result == 0 --> heuristic returns FALSE
but what about :
	new dissector result < 0 --> heuristic returns ?????

If I suspect that a packet may contain JXTA data but need more data to make a determination what should my heuristic dissector return?

Mike

Attachment: jxta_17707.diff.gz
Description: GNU Zip compressed data