Ethereal-dev: Re: [Ethereal-dev] packet-giop.c enhancements: ServiceContexts, RTCORBA prioriti
Hi Craig,
your patch works fine with the GIOP captures I have tried (Visibroker
traffic mainly).
A couple of changes though (mainly errors that were there before your
patch):
- correct bitmask for hf_giop_iop_vscid and hf_giop_iop_scid, reflecting
the change
to a 24bit vendor id and 8 bit service id
- set the length of the "Service Context List" tree correctly after
dissecting. The
length was just being set to the end of the tvb
- do not exit the loop through the Service Context List with return if the
sequence length
is 0, continue the loop instead. This should fix a problem reported by
Mika Korpela.
(see http://www.ethereal.com/lists/ethereal-dev/200205/msg00234.html )
I never really tested this though, because I don't have a capture with a
Service Context
List with more than one element.
Regards,
Bernd
--On Wednesday, February 12, 2003 19:07:33 -0500 Craig Rodrigues
<rodrigc@xxxxxxxxx> wrote:
Hi,
I am working with TAO 1.3 ( http://www.cs.wustl.edu/~schmidt/TAO.html ),
which is a CORBA compliant Object Request Broker (ORB).
TAO has implementats some features of Real-time CORBA. It encodes
a priority value in the service context field. I wanted to
decode this value with Ethereal, so I had to make some enhancements
to Ethereal.
I added a few new methods:
decode_RTCorbaPriority()
decode_UnknownServiceContext()
and I overhauled:
decode_ServiceContextList() to make use of the above functions, and
removed some code that was hidden behind #ifdef's.
The OMG has standardized 16 ServiceContext ID's. I didn't add decoding
routines for all of those ServiceContext ID's, but it should be
relatively easy to add them in at a later date.
Right now I just added decoding for ServiceContext ID == 10, which is
RTCorbaPriority.
How is this patch?
Thanks.
--
Craig Rodrigues
http://home.attbi.com/~rodrigc
rodrigc@xxxxxxxxx
Attachment:
packet-giop.c.diff
Description: Binary data