Ethereal-dev: [Ethereal-dev] idl2eth man page

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

From: Frank Singleton <frank.singleton@xxxxxxxxxxxx>
Date: Mon, 30 Jul 2001 14:52:28 -0500
Hi,

In accordance with the other "Ethereal" support tools,
I have started a man page for idl2eth.

/Frank..

-- 
EUS/SV/Z Frank Singleton      ASO Americas BSS
Office : +1 972 583 3251      ECN 800 33251  
Mobile : +1 214 228 0874      Amateur Radio: VK3FCS/KM5WS   
Email : frank.singleton@xxxxxxxxxxxx

Hardware: HP Omnibook 4150 running Redhat Linux 7.1 (2.4.3-12 kernel).
=head1 NAME

idl2eth - CORBA IDL to Ethereal Plugin Generator

=head1 SYNOPSYS

B<idl2eth> filename

=head1 DESCRIPTION

B<idl2eth> is a program that takes a user specified B<CORBA IDL> 
file and generates B<"C"> source code for an B<Ethereal> "plugin".

This resulting file can be compiled as an B<Ethereal> plugin, and
used to monitor B<GIOP/IIOP> traffic that is using this IDL.

B<idl2eth> is actually a shell script wrapper for two B<Python> programs.

These programs are:

=over 4

B<ethereal_be.py>  - Contains the main IDL Visitor Class

B<ethereal_gen.py> - Contains the Source Code Generator Class 


B<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.


=head1 OPTIONS

Currently there are no options. B<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




=head1 ENVIRONMENT

The "-p ./" option passed to omniidl (inside B<idl2eth>) indicates that ethereal_be.py
and ethereal_gen.py are residing in the current directory. This may need
tweaking if you place these files somewhere else.

If it complains about being unable to find some modules (eg tempfile.py), 
you may want to check if PYTHONPATH is set correctly.

eg:  PYTHONPATH=/usr/lib/python1.5/ 


=head1 SEE ALSO

L<ethereal(1)>


=head1 NOTES

B<idl2eth> (including B<ethereal_be.py> and B<ethereal_gen.py>) are part of 
the B<Ethereal> distribution.  The latest version of B<Ethereal> can 
be found at B<http://www.ethereal.com>.

B<idl2eth> uses B<omniidl>, and IDL parser, and can be found at
B<http://www.uk.research.att.com/omniORB/omniORB.html>

=head1 TODO

Some of the more important things to do are:

=over 4

=item *
Implement Code generation for Corba IDL B<unions>.

=item *
Improve Explicit dissection code.

=item *
Improve command line options.

=back 4

=head1 AUTHORS

  Original Author
  -------- ------
  Frank Singleton             <frank.singleton@xxxxxxxxxxxx>


  Contributors
  ------------