You dont need to recompile ethereal. If you compiled the new C code as a
shared object and then load and initalize it at runtime, you could leave
ethereal alone. As the disectors already dynamically register themselfs
at run time this would be rather easy. The trick as with all dynamic
loadables is keeping the versions straight.. and the apis consistent.
On Wed, 18 Dec 2002, Chris Waters wrote:
> Hi,
>
> Rather than building a translator like idl2eth which will create C code, how
> about a runtime/end-user method of adding dissectors. The problem with any
> scheme that generates C code is that you still need to compile Ethereal to
> use your new dissector. Unfortunately compiling Ethereal is not trivial on
> some platforms (e.g. Windows) and anyone who can get it to compile probably
> could have written their dissector directly in C anyway.
>
> Both Analyzer and Airopeek have a meta-language which is used to describe
> protocols and users can add their own protocols simply by providing files in
> this format. I have some colleagues who would have no idea how to compile
> Analyzer, but they have managed to add dissectors for the Bluetooth protocol
> suite using the built in protocol-description-language.
>
> The drawback of a non-compiled solution is speed, but personally I would
> give up some speed for the advantage of being able to quickly add a
> dissector for a new protocol.
>
> My preference would be to use a scripting language, such as lua
> (www.lua.org), to describe the protocols. It is well suited to describing
> data structures, such as simple arrays of fields, but because it is a
> scripting language you can write as much or as little code as you like to
> handle complicated protocols.
>
> Regards,
>
> Chris.
>
> ----- Original Message -----
> From: <andreas.sikkema@xxxxxxxxxxx>
> To: "Jason House" <jhouse@xxxxxxxxx>
> Cc: <ethereal-dev@xxxxxxxxxxxx>; "Ph. Marek" <philipp.marek@xxxxxxxxxx>
> Sent: Wednesday, December 18, 2002 9:27 AM
> Subject: Re: [Ethereal-dev] Easier dissector building
>
>
> > > It's definitely do-able to have an automated tool to write dissectors
> > > for you.
> >
> > Exactly. I have adapted an ASN.1 compiler to generate code that
> > can be used for an Ethereal dissector. It took me a couple of
> > months of hard work, but you can do it ;-)
> >
> > And then it still needs some manual work....
> >
> > --
> > Andreas
> >
> >
> > _______________________________________________
> > 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
>
-- James Harris