Ethereal-dev: Re: [Ethereal-dev] GIOP decoding broken, assertion in epan/proto.c:2072

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

From: Guy Harris <gharris@xxxxxxxxx>
Date: Sat, 15 Jan 2005 03:03:20 -0800
Frederic Peters wrote:

The attached patch fixes the issue but I didn't known the inner
workings of that dissector so it may be a bit rough.
The problem is that idl2eth-generated dissectors were explicitly 
calculating the length of the top-level item for the tree for the 
specific GIOP protocol, rather than using -1, which was causing a bad 
value to be passed, causing the assertion to fail.
I've checked in a change to make the GIOP-based dissectors we have use 
-1 - and to change idl2eth (ethereal_gen.py, to be precise) to generate 
dissectors that use -1; that fixes the problem.
(The capture file in question also shows that the heuristic dissectors 
for GIOP-based dissectors aren't working correctly - they set the 
protocol column and create the top-level protocol item *before* deciding 
definitively that the GIOP protocol being used is the protocol for that 
dissector.)