Ethereal-dev: Re: SV: [Ethereal-dev] What's changed with operational dissection?

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

From: Jaap Keuter <jaap.keuter@xxxxxxxxx>
Date: Fri, 28 Oct 2005 12:50:39 +0200 (CEST)
Hi List,

Now that the Etereal Debug Console works again I found why the
conversation didn't survive in this case. Actually the
conversation is surviving, just the data isn't. There's a specific message
which indicates that the data value isn't valid any more. It is then
deleted. So no wonder it wasn't found later on. Question remain why does
this work in previous versions (=< 0.10.11?). Well, this is the result of
a bug fixed in conversation_delete_proto_data(), line 1090. Removing a
single slist item is replaced by removing them all. My original code must
be dependant on this bug. I've changed it so it works based on
pinfo->fd->num now.

Still the question below remains. Why is the dissector always called with
a tree != NULL parameter?

Thanx,
Jaap

On Fri, 28 Oct 2005, Jaap Keuter wrote:

> Hi Andres,
>
> Just tried it, no luck. :(
>
> I'm using g_print() now to get output onto the Ethereal Debug Console and
> added this line at the top of my dissector:
>
>   g_print("entering dissector for frame %d, tree %x\n\r", pinfo->fd->num, tree);
>
> While opening a capture file this gets output on the console:
>
> ----8<-----
> entering dissector for frame 1, tree 3140e68
> entering dissector for frame 1, tree 3140dd8
> entering dissector for frame 4, tree 3140e08
> entering dissector for frame 5, tree 3140e50
> entering dissector for frame 6, tree 3140868
> entering dissector for frame 7, tree 3140e20
> entering dissector for frame 8, tree 3140850
> entering dissector for frame 9, tree 3140e20
> entering dissector for frame 10, tree 3140850
> entering dissector for frame 11, tree 3140e50
> .....
> entering dissector for frame 37, tree 3140e20
> entering dissector for frame 38, tree 3140e50
> entering dissector for frame 39, tree 3140e08
> entering dissector for frame 1, tree 3140898
> ----8<-----
>
> What makes me wonder is why is there always a tree?
>
> Thanx,
> Jaap
>
> On Thu, 27 Oct 2005, Jaap Keuter wrote:
>
> >
> > Hi Anders,
> >
> > I knew there was something with optimizations :) Reading from proto.h and
> > packet-wsp.c I could try to add
> >
> >   if (tree)
> >     PTREE_DATA(tree)->visible=1;
> >
> > You recon this will resolve this issue?
> >
> > Eh, I went to the preferences and have the console window opened every
> > time. Still no output with printf() :(
> >
> > Thanx,
> > Jaap
> >
> >
> > On Thu, 27 Oct 2005, Anders Broman wrote:
> >
> > > Hi,
> > > The problem is probably because of TRY_TO_FAKE_THIS_ITEM used to speed up
> > > the dissection.
> > >
> > > To get the console open edit preferences and set "Open a consol window" as
> > > desired.
> > >
> > > Brg
> > > Anders
> > >
> > > -----Ursprungligt meddelande-----
> > > Fr?n: ethereal-dev-bounces@xxxxxxxxxxxx
> > > [mailto:ethereal-dev-bounces@xxxxxxxxxxxx] F?r Jaap Keuter
> > > Skickat: den 27 oktober 2005 18:48
> > > Till: Ethereal Developer Mailinglist
> > > ?mne: [Ethereal-dev] What's changed with operational dissection?
> > >
> > > Hi list,
> > >
> > > I've been asked to port some dissectors from 0.10.11 to 0.10.13.
> > > In doing that I've bumped into this thing.
> > > When a certain packet is dissected it creates a conversation, adds a 32
> > > bit value to it and is done. A packet further down the line can look for
> > > this conversation, get the value and adjust its display accordingly.
> > >
> > > Now what I see differently from 0.10.11 is that I have to have a detailed
> > > dissection done on the packet creating the conversation in order for the
> > > packet further sown the line to find it. There seems to be no conversation
> > > without the detailed dissection (no the conversation creation code is not
> > > in an 'if (tree)' block.).
> > >
> > > Also what is the current state of the art to get debug output onto the
> > > console window (Win32)?
> > >
> > > Thanx,
> > > Jaap
> > >
> > >
> > > _______________________________________________
> > > Ethereal-dev mailing list
> > > Ethereal-dev@xxxxxxxxxxxx
> > > http://www.ethereal.com/mailman/listinfo/ethereal-dev
> > >
> > >
> > > _______________________________________________
> > > Ethereal-dev mailing list
> > > Ethereal-dev@xxxxxxxxxxxx
> > > http://www.ethereal.com/mailman/listinfo/ethereal-dev
> > >
> > >
> >
> > _______________________________________________
> > Ethereal-dev mailing list
> > Ethereal-dev@xxxxxxxxxxxx
> > http://www.ethereal.com/mailman/listinfo/ethereal-dev
> >
> >
>
> _______________________________________________
> Ethereal-dev mailing list
> Ethereal-dev@xxxxxxxxxxxx
> http://www.ethereal.com/mailman/listinfo/ethereal-dev
>
>