idl2eth

IDL2ETH(1) The Ethereal Network Analyzer IDL2ETH(1)

NAME

idl2eth - CORBA IDL to Ethereal Plugin Generator

SYNOPSYS

idl2eth filename

DESCRIPTION

idl2eth is a program that takes a user specified CORBAIDL file and
generates "C" source code for an Ethereal "plugin".
This resulting file can be compiled as an Ethereal plugin, and used to
monitor GIOP/IIOP traffic that is using this IDL.
idl2eth is actually a shell script wrapper for two Python programs.
These programs are:
ethereal_be.py - Contains the main IDL Visitor Class
ethereal_gen.py - Contains the Source Code Generator Class
idl2eth supports heuristic dissection of GIOP/IIOP traffic, and some
experimental code for explicit dissection, based on Object Key <->
Repository Id mapping. However, code for heuristic based plugins is
generated by default, and users should consider this the preferred
method unless you have some namespace collisions.

OPTIONS

Currently there are no options. idl2eth can be invoked as follows.
1. To write the C code to stdout.
idl2eth <your_file.idl>
eg: idl2eth echo.idl
2. To write to a file, just redirect the output.
idl2eth echo.idl > packet-test.c

ENVIRONMENT

idl2eth will look for ethereal_be.py and ethereal_gen.py in $PYTHON-PATH/site-packages/ and if not found, will try the current directory ./
The -p option passed to omniidl (inside idl2eth) indicates where ethe-real_be.py and ethereal_gen.py will be searched. This may need tweak-
ing if you place these files somewhere else.
If it complains about being unable to find some modules (eg temp-
file.py), you may want to check if PYTHONPATH is set correctly.
eg: PYTHONPATH=/usr/lib/python1.5/

SEE ALSO

ethereal(1)

NOTES

idl2eth (including ethereal_be.py and ethereal_gen.py) are part of the
Ethereal distribution. The latest version of Ethereal can be found at
http://www.ethereal.com.
idl2eth uses omniidl, and IDL parser, and can be found at
http://omniorb.sourceforge.net/

TODO

Some of the more important things to do are:
* Improve Explicit dissection code.
* Improve command line options.
* Improve decode algorithm when we have operation name collision.