Ethereal-dev: [Ethereal-dev] Help for writing Tracing Facility

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

From: Luis Ontanon <luis_ontanon@xxxxxxxx>
Date: Wed, 22 Sep 2004 14:52:33 +0200
Title: Help for writing Tracing Facility
Hi,

 As of right now I'm writing a tracing facility for ethereal so that “user sessions” spanning multiple protocols can be easiliy traced.

So far It's starting to work for telephony calls that span ISUP, Q931 and H225_RAS by hard coding into those dissectors the "exporters" of useful fields as well as the call to the "tracing_dissector". I do not like it this way, my intent would  be to be able to import these fields into the facility from the proto_tree pointer passed to the dissector of the tracing pseudo-protocol and have the tracing_dissector be called with a pinfo and a tvb relative to the traced protocol directly by ethereal.

My question are:
 How could I have the pseudo-protocol handling the tracing to register with ethereal  at configuration time so that it is called whenever there is a "traced protocol" PDU with a tbv a proto_tree and a pinfo that would allow my facility to determine a uid for the pdu, whether a pdu is embedded into another one,
And to be able to fetch values from field of the calling protocols given the field names?

P.S. As I get it to the minimum usability point, the code for the tracing facility will certainly be released.

Best Regards,
Luis Ontanon